Author: jleroux
Date: Tue Jan  9 15:03:51 2018
New Revision: 1820668

URL: http://svn.apache.org/viewvc?rev=1820668&view=rev
Log:
Completes the BuildBot documentation

Modified:
    ofbiz/tools/documentation/BuildBot/BuildBot.md

Modified: ofbiz/tools/documentation/BuildBot/BuildBot.md
URL: 
http://svn.apache.org/viewvc/ofbiz/tools/documentation/BuildBot/BuildBot.md?rev=1820668&r1=1820667&r2=1820668&view=diff
==============================================================================
--- ofbiz/tools/documentation/BuildBot/BuildBot.md (original)
+++ ofbiz/tools/documentation/BuildBot/BuildBot.md Tue Jan  9 15:03:51 2018
@@ -16,6 +16,62 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-Apache® OFBiz® BuilbBot documentation
+BuilbBot documentation
 =============
 
+## What is BuilbBot and why using it?
+OFBiz uses [BuilbBot](https://en.wikipedia.org/wiki/Buildbot) as its 
Continuous Integration (CI) tool. There are other CI tools [used at the 
ASF](https://ci.apache.org/).
+
+IMO the BuildBot pros and cons are
+### Pros
+* Compared to a tool like Jenkins (those are the 2 I know) you don't have to 
use an UI, you write scripts. This is also a cons for some. 
+* The syntax is simple and well documented, some prefer intuitive UI.
+* The infra team at the ASF provides a kind of compiler which prevents to 
commits error in the shared script (the builders are all common to the ASF)   
+* The infra team, especially Gavin McDonald, is always ready to help in a very 
efficient way
+
+### Cons
+* You have no UI so you have to write your own scripts, some prefer UIs to 
scripts.
+* Despite the "compiler" you sometimes get unexpected result when you don't 
completely master BuildBot concepts. You must then ask infra for help, either 
on [HipChat infra room](https://apache.hipchat.com/chat/room/669587) or though 
the [service 
desk](https://issues.apache.org/jira/servicedesk/customer/portal/1/create/3) 
+
+## OFBiz and BuildBot
+
+[Here is the OFBiz BuildBot 
script](https://svn.apache.org/repos/infra/infrastructure/buildbot/aegis/buildmaster/master1/projects/ofbiz.conf)
+
+You can see the OFBiz builders and their states in the [common Buildbot 
waterfall view](https://ci.apache.org/waterfall) (look for "ofb"). 
+Here are the [test results](ci.apache.org/projects/ofbiz/logs/)
+
+The [ofbizTrunkFramework 
builder](https://ci.apache.org/builders/ofbizTrunkFramework) is triggered on 
commits in the trunk framework branch. This also triggers the 
[ofbizTrunkFrameworkPlugins](https://ci.apache.org/builders/ofbizTrunkFrameworkPlugins)
 to check that a commit in the framework puts no regressions in plugins. 
+The same apply to the 
[ofbizBranch17Framework](https://ci.apache.org/builders/ofbizBranch17Framework) 
and the 
[ofbizBranch17FrameworkPlugins](https://ci.apache.org/builders/ofbizBranch17FrameworkPlugins)
+The current stable branch R16.12 has only [one 
builder](https://ci.apache.org/builders/ofbizBranch16). This will be gone in 
future. All new releases needs 2 builders.
+
+In an OFBiz builder page you can see [an history of the builds up to 
100+](https://ci.apache.org/builders/ofbizTrunkFramework). OFBiz randomly 
(except for RAT) uses 3 servers to build as you can see at the bottom of this 
page. You may want to explore more to get acquainted with the tool...
+
+There is also the [RAT 
builder](https://ci.apache.org/builders/ofbizTrunkFrameworkRat) which check the 
licenses in OFBiz. You can find the result 
[here](https://ci.apache.org/projects/ofbiz/rat-output.html)
+
+# Handling issues
+Sometimes (rarely) you can get transient tests errors in BuildBot. This mean 
tests don't all pass in BuildBot, though they pass in your local instance. In 
such case, it's most certainly an issue with servers. Those are hard workers 
and make errors from time to time, which shows that not only human make errors 
:smirk:.
+
+Before being anything it's best to check which BuildBot step is impacted and 
if it exists have a look at the logfile (stdio) 
+
+Some other errors may happen, like
+* svn not updating
+* upload not working
+* you name it...
+
+
+In such case you can trigger a build from IRC to see if the problem resolves 
by itself. Most of the time tests and svn issues are resolved this way. If it 
does not then the best is to ask Infra help, either on [HipChat infra 
room](https://apache.hipchat.com/chat/room/669587) or through the [service 
desk](https://issues.apache.org/jira/servicedesk/customer/portal/1/create/3)
+
+When something like that happens, I get to IRC (using 
https://webchat.freenode.net). There using a recognisable username (I use 
jleroux) I get to the ofbiz channel. I wait for ofbiz-bot to appear, click on 
it, click on query and then I can make a request in the chat line to restart a 
scheduler.
+A request is of the form 
+
+    force build ofbizTrunkFramework
+    
+you can put the text you want to appear in builder, after this expression, 
something like
+    
+    forces manual build after weird error
+   
+So the whole request is of the form
+
+    force build ofbizTrunkFramework forces manual build after weird error
+
+Note though that with our last config (see 
[INFRA-15394](https://issues.apache.org/jira/browse/INFRA-15394)) the 
ofbizTrunkFrameworkPlugins and ofbizBranch17FrameworkPlugins builders are 
dependent and respectively automatically launched by the ofbizTrunkFramework 
and ofbizBranch17Framework builders but only on commits. So if you use an IRC 
command like `force build ofbizTrunkFramework` only this builder will be 
launched not the dependent ofbizTrunkFrameworkPlugins.
\ No newline at end of file


Reply via email to