Initial add of defaria.com
[clearscm.git] / defaria.com / blogs / Status / archives / cat_hewlett_packard.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" id="sixapart-standard">
4 <head>
5    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6    <meta name="generator" content="Movable Type 5.2.3" />
7
8    <link rel="stylesheet" href="http://defaria.com/blogs/Status/styles-site.css" type="text/css" />
9    <link rel="alternate" type="application/atom+xml" title="Atom" href="http://defaria.com/blogs/Status/atom.xml" />
10    <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://defaria.com/blogs/Status/index.xml" />
11
12    <title>Status for Andrew DeFaria: Hewlett Packard Archives</title>
13 </head>
14 <body class="layout-one-column">
15    <div id="container">
16       <div id="container-inner" class="pkg">
17
18          <div id="banner">
19             <div id="banner-inner" class="pkg">
20                <h1 id="banner-header"><a href="http://defaria.com/blogs/Status/" accesskey="1">Status for Andrew DeFaria</a></h1>
21                <h2 id="banner-description">Searchable status reports and work log</h2>
22             </div>
23          </div>
24
25          <div id="pagebody">
26             <div id="pagebody-inner" class="pkg">
27                <div id="alpha">
28                   <div id="alpha-inner" class="pkg">
29                      
30                      <p class="content-nav">
31                         <a href="http://defaria.com/blogs/Status/">Main</a>
32                      </p>
33                      
34                      
35                      
36
37                      <h2 class="date-header">July 13, 2006</h2>
38                      <a id="a000560"></a>
39                      <div class="entry" id="entry-560">
40                         <h3 class="entry-header">Microsoft Software</h3>
41                         <div class="entry-content">
42                            <div class="entry-body">
43                               <ul>
44   <li>Installed Microsoft Visual Studio.NET 2003</li>
45
46   <li>Installed Microsoft Installable File System</li>
47
48   <li>Installed MKS Toolkid</li>
49
50   <li>Changed script to resolve dependancies with new system</li>
51
52   <li>Updated env.pm to use cygpath</li>
53 </ul>
54                               
55                               <p class="entry-more-link">
56                                  <a href="http://defaria.com/blogs/Status/archives/000560.html#more">Continue reading "Microsoft Software" &raquo;</a>
57                               </p>
58                               
59                               <p class="entry-footer">
60                                  <span class="post-footers">Posted by  at 10:26 AM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000560.html">Permalink</a>
61                                  
62                                  
63                               </p>
64                            </div>
65                         </div>
66                      </div>
67                      
68                      
69
70                      <h2 class="date-header">July 11, 2006</h2>
71                      <a id="a000559"></a>
72                      <div class="entry" id="entry-559">
73                         <h3 class="entry-header">New Build Server</h3>
74                         <div class="entry-content">
75                            <div class="entry-body">
76                               <p>This entry will serve as documentation for making a new Windows build server for RIMF</p>
77
78 <ul>
79   <li>New machine received with Windows 2003 XP (SP 1?) installed</li>
80
81   <li>Install Clearcase 2003.06.00</li>
82
83   <li>Installed Microsoft Visual Studio.NET 2003</li>
84
85   <li>Installed Cygwin</li>
86
87   <li>Installed JDK 1.4.2</li>
88 </ul>
89                               
90                               <p class="entry-more-link">
91                                  <a href="http://defaria.com/blogs/Status/archives/000559.html#more">Continue reading "New Build Server" &raquo;</a>
92                               </p>
93                               
94                               <p class="entry-footer">
95                                  <span class="post-footers">Posted by  at  2:48 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000559.html">Permalink</a>
96                                  
97                                  
98                               </p>
99                            </div>
100                         </div>
101                      </div>
102                      
103                      
104
105                      <h2 class="date-header">July  7, 2006</h2>
106                      <a id="a000558"></a>
107                      <div class="entry" id="entry-558">
108                         <h3 class="entry-header">Remove Empty Branch</h3>
109                         <div class="entry-content">
110                            <div class="entry-body">
111                               <ul>
112   <li>Documented problems with empty branches</li>
113 </ul>
114                               
115                               <p class="entry-more-link">
116                                  <a href="http://defaria.com/blogs/Status/archives/000558.html#more">Continue reading "Remove Empty Branch" &raquo;</a>
117                               </p>
118                               
119                               <p class="entry-footer">
120                                  <span class="post-footers">Posted by  at 12:23 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000558.html">Permalink</a>
121                                  
122                                  
123                               </p>
124                            </div>
125                         </div>
126                      </div>
127                      
128                      
129
130                      <h2 class="date-header">May 30, 2006</h2>
131                      <a id="a000554"></a>
132                      <div class="entry" id="entry-554">
133                         <h3 class="entry-header">Osaka Builds on Windows</h3>
134                         <div class="entry-content">
135                            <div class="entry-body">
136                               <ul>
137   <li>Worked with Zoran to resolve merge issues from RISS15_Integration -> osaka_strm</li>
138
139   <li>Documented how to build development views on Tiburon for the L2 and Base components</li>
140
141   <li>Assisted engineer on problems with view and installer_cmp</li>
142
143   <li>Changed RISS15_Integration to not do testing all the time</li>
144
145   <li>Worked more on osaka_strm build scripts</li>
146 </ul>
147                               
148                               <p class="entry-more-link">
149                                  <a href="http://defaria.com/blogs/Status/archives/000554.html#more">Continue reading "Osaka Builds on Windows" &raquo;</a>
150                               </p>
151                               
152                               <p class="entry-footer">
153                                  <span class="post-footers">Posted by  at  5:58 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000554.html">Permalink</a>
154                                  
155                                  
156                               </p>
157                            </div>
158                         </div>
159                      </div>
160                      
161                      
162
163                      <h2 class="date-header">April 24, 2006</h2>
164                      <a id="a000547"></a>
165                      <div class="entry" id="entry-547">
166                         <h3 class="entry-header">XAM Build</h3>
167                         <div class="entry-content">
168                            <div class="entry-body">
169                               <ul>
170   <li>Got XAM ant build to work. Test build almost working</li>
171
172   <li>Ported Build.pl for use in XAM</li>
173 </ul>
174                               
175                               <p class="entry-more-link">
176                                  <a href="http://defaria.com/blogs/Status/archives/000547.html#more">Continue reading "XAM Build" &raquo;</a>
177                               </p>
178                               
179                               <p class="entry-footer">
180                                  <span class="post-footers">Posted by  at  7:15 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000547.html">Permalink</a>
181                                  
182                                  
183                               </p>
184                            </div>
185                         </div>
186                      </div>
187                      
188                      
189
190                      <h2 class="date-header">April 17, 2006</h2>
191                      <a id="a000543"></a>
192                      <div class="entry" id="entry-543">
193                         <h3 class="entry-header">Ant Rant</h3>
194                         <div class="entry-content">
195                            <div class="entry-body">
196                               <ul>
197   <li>Studying Ant</li>
198 </ul>
199                               
200                               <p class="entry-more-link">
201                                  <a href="http://defaria.com/blogs/Status/archives/000543.html#more">Continue reading "Ant Rant" &raquo;</a>
202                               </p>
203                               
204                               <p class="entry-footer">
205                                  <span class="post-footers">Posted by  at  5:06 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000543.html">Permalink</a>
206                                  
207                                  
208                               </p>
209                            </div>
210                         </div>
211                      </div>
212                      
213                      
214
215                      <h2 class="date-header">April 11, 2006</h2>
216                      <a id="a000539"></a>
217                      <div class="entry" id="entry-539">
218                         <h3 class="entry-header">Build bugs, Test suite still not runing nightly</h3>
219                         <div class="entry-content">
220                            <div class="entry-body">
221                               <ul>
222   <li>Fixed bug with saving test.log where I was attempting to save it before I returned from the subroutine. We now save the test.log even if test suite is successful. This is good because continuous building reuses the view area thus destroying any test.logs created before.</li>
223
224   <li>Fixed bug in build::CheckForShutdown where we called LogEvent without a $log parameter. This caused CheckForShutdown to abort the build while in CIT daemon mode and thus we didn't see the error. It also left the shutdown file thus subsequent starts merely shutdown (actually aborted) until one manually removed the shutdown file. Bad bug! Bad, bad!</li>
225
226   <li>Looking into why the test suite works when called at the Build.pl level but fails when called from the streamBuild.pl level.</li>
227 </ul>
228                               
229                               <p class="entry-footer">
230                                  <span class="post-footers">Posted by  at 12:15 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000539.html">Permalink</a>
231                                  
232                                  
233                               </p>
234                            </div>
235                         </div>
236                      </div>
237                      
238                      
239
240                      <h2 class="date-header">April 10, 2006</h2>
241                      <a id="a000537"></a>
242                      <div class="entry" id="entry-537">
243                         <h3 class="entry-header">Save the logfiles! IFrames</h3>
244                         <div class="entry-content">
245                            <div class="entry-body">
246                               <ul>
247   <li>Changed the build process to save the test logfile</li>
248
249   <li>Changed the build_status to use an iframe for the continuous log file</li>
250 </ul>
251                               
252                               <p class="entry-footer">
253                                  <span class="post-footers">Posted by  at  6:49 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000537.html">Permalink</a>
254                                  
255                                  
256                               </p>
257                            </div>
258                         </div>
259                      </div>
260                      
261                      
262
263                      <h2 class="date-header">March 30, 2006</h2>
264                      <a id="a000532"></a>
265                      <div class="entry" id="entry-532">
266                         <h3 class="entry-header">Unit Test bugs</h3>
267                         <div class="entry-content">
268                            <div class="entry-body">
269                               <ul>
270   <li>I think I finally resolved the problem with the Unit Tests not running at night</li>
271
272   <li>Changed to get the test failures and the test errors. If everything passed then no email is to be sent. Otherwise I now include the test failures and errors in the email and the subject line will no longer say SUCCEEDED</li>
273
274   <li>Changed build_status.php to sense if this is a continuous build or just a regular build and act accordingly</li>
275 </ul>
276                               
277                               <p class="entry-more-link">
278                                  <a href="http://defaria.com/blogs/Status/archives/000532.html#more">Continue reading "Unit Test bugs" &raquo;</a>
279                               </p>
280                               
281                               <p class="entry-footer">
282                                  <span class="post-footers">Posted by  at  5:54 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000532.html">Permalink</a>
283                                  
284                                  
285                               </p>
286                            </div>
287                         </div>
288                      </div>
289                      
290                      
291
292                      <h2 class="date-header">March 28, 2006</h2>
293                      <a id="a000531"></a>
294                      <div class="entry" id="entry-531">
295                         <h3 class="entry-header">Remove Empty Branch Trigger</h3>
296                         <div class="entry-content">
297                            <div class="entry-body">
298                               I have a trigger called the <i>Remove Empty Branch Trigger</i>:<br>
299 <blockquote>
300   <p><a  href="https://defaria.com/Resume/Clearcase/RemoveEmptyBranch.php">Remove
301 Empty Branch Trigger</a>: This trigger removes the branch and the zero element that is left when a user checks out an element on a branch then cancels the checkout. Normally this causes a branch with only a zero element which is identical to the version from which it was branched. Essentially this empty branch is useless. This trigger prevents that.</p>
302 </blockquote>
303
304 <p>Not only is this empty branch useless but:</p>
305 <ul>
306   <li>It clutters the version tree</li>
307
308   <li>Causes Clearcase to maintain more meta data, slowing down operations</li>
309
310   <li>Can cause additional work for UCM when you rebase</li>
311 </ul>
312
313 <p>I'm experiencing that last bullet item right now. At one time I was attempting to do a delivery for somebody from another stream, first rebasing my stream. The delivery was unsuccessful and it was decided that this other engineer would work on it and deliver himself. So I canceled the delivery. One would think then that my view was relatively clean.</p>
314
315 <p>However now I want to deliver something else and I see this old rebase activity hanging around. In looking into the change set I notice a bunch of items from that older attempt at delivering. Why were these still hanging around? I had canceled that delivery right?</p>
316
317 <p>Well I believe the problem comes from having empty branches. Take for example the following:</p>
318
319 <p><img src="/blogs/images/RmEmptyBranch.png" alt=""></p>
320
321 <p>It shows a rebase from osaka/5 -&gt; defaria_osaka/1. Yet these two version compare to be the same! How did this happen? Well think about it. Prior to the rebase I had an empty branch (i.e. I had
322 defaria_osaka/0 left over from the canceled delivery which merely did an unco). This means that osaka/4 and defaria_osaka/0 were identical. Then osaka/5 came into existance. Now 4 != 5 and when I rebase Clearcase has to propogate osaka/5 creating defaria_osaka/1. Now I have two identical versions and associate meta data and all for naught! Additionally I have a baseline lable on defaria_osaka/1 which give the air of importance to this unimportant version.</p>
323
324 <p>Had we had a remove empty branch trigger, when the delivery canceled, the unco would have left defaria_osaka/0 and the remove empty branch trigger would have removed the empty branch. Then my view would have been pointing to osaka/4 (and would have moved to osaka/5 if I were using .../osaka/LATEST and a dynamic view or updated to osaka/5 during the normal course of updating the view). Indeed, allowing empty branches to persist can cause developers to unknowingly get "stuck in
325 time".</p>
326                               
327                               <p class="entry-footer">
328                                  <span class="post-footers">Posted by  at  2:25 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000531.html">Permalink</a>
329                                  
330                                  
331                               </p>
332                            </div>
333                         </div>
334                      </div>
335                      
336                      
337
338                      <h2 class="date-header">March 27, 2006</h2>
339                      <a id="a000530"></a>
340                      <div class="entry" id="entry-530">
341                         <h3 class="entry-header">Resuming</h3>
342                         <div class="entry-content">
343                            <div class="entry-body">
344                               <p>I haven't been keeping this up lately but I've decided to resume my status even if I don't use this as my actual status report.</p>
345
346 <p>First I'll try to catch up by summarizing what I've been working on lately. Mostly I've been working on this CIT (Continuous Integration and Test) Perl script. CIT is basically an controlling script that calls other build scripts in use here. The idea was to have this script continually build the software, if it needs to build. A primative form of build avoidance is implemented in that a cleartool update is done and if no files are updated in a particular component then that component will not be built.</p>
347
348 <p>Some of its characteristics include:</p>
349
350 <ul>
351   <li>Can run in one time mode as well as in -cit mode (continuous mode)</li>
352
353   <li>Works off of a config, which specifics defaults for the various parameters which can be overriden on the command line</li>
354
355   <li>If -cit is specified, the script goes into <i>daemon mode</i>.
356
357   <li>Script checks to see if you are in the necessary chrooted environment for building (a requirement)</li>
358
359   <li>Added code in cit mode to eliminate the logfiles created if nothing was built</li>
360
361   <li>At key points in a build a build_status.log file is updated so status can be displayed on a web page</li>
362
363   <li>After a successful build a series of tests are run. Continuous build is not too continuous if the testing hangs! And tests have been known to hang! So the script now forks the tests then sets an overall alarm (default 2 hours) for tests to complete. If they don't then a QUIT signal is sent so that the JREs can try to dump their stacks. After a small wait for that a TERM signal is send to all children fo the tests and again we wait. Finally a KILL signal is sent and an appropriate email is then sent out saying that the tests have timed out</li>
364
365   <li>Corresponding PHP script was written to show the status of the cit</li>
366 </ul>
367                               
368                               <p class="entry-footer">
369                                  <span class="post-footers">Posted by  at  5:42 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000530.html">Permalink</a>
370                                  
371                                  
372                               </p>
373                            </div>
374                         </div>
375                      </div>
376                      
377                      
378
379                      <h2 class="date-header">February 23, 2006</h2>
380                      <a id="a000529"></a>
381                      <div class="entry" id="entry-529">
382                         <h3 class="entry-header">CIT Building</h3>
383                         <div class="entry-content">
384                            <div class="entry-body">
385                               <p>Worked a lot on a script to drive the building. This script, called build, utilizes a configuration file as well as command line parameters to support adhoc kind of building (e.g. "Start a build but only build component X, noclean and do the testing, etc.).</p>
386
387 <p>Recently added what is called CIT (Continuous Intergration and Test) option as well as some build avoidance at the component level (utilizing the output from cleartool's update command). With --cit turned on the build script will attempt a build by first updating the view. It will then parse cleartool's update log. If nothing new came in for the component then the assumption is made that the component does not need to be rebuilt and skips it. After all components are built, streamBuild.pl will do other things like publishing and testing, etc. Next build will make a baseline (IFF the streamBuild.pl returns 0 status and at least one component was built) as well as update change logs on the web page.</p>
388
389 <p>When all of that is done, build will wait for 5 minutes and then restart itself.</p>
390
391 <p>Worked out a nasty bug where build was using chdir but streamBuild.pl was using $ENV {PWD}. Turns out that chdir does not change $ENV {PWD}. Fixed by doing "use Cwd qw(chdir)" which effectively sets $ENV {PWD} when chdir is called.</p>
392
393 <p><b>WARNING:</b> Found out that streamBuild.pl was not that robust and does not return non zero status for some failures. For example, if it is not able to run unitTests it still might return a 0 status. This is bad. The streamBuild.pl script will have to be investigated and made to return good exit codes.</p>
394                               
395                               <p class="entry-footer">
396                                  <span class="post-footers">Posted by  at 12:55 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000529.html">Permalink</a>
397                                  
398                                  
399                               </p>
400                            </div>
401                         </div>
402                      </div>
403                      
404                      
405
406                      <h2 class="date-header">February  6, 2006</h2>
407                      <a id="a000528"></a>
408                      <div class="entry" id="entry-528">
409                         <h3 class="entry-header">Back to HP</h3>
410                         <div class="entry-content">
411                            <div class="entry-body">
412                               <p>I'm back at HP, this time in Pleasanton working for the ILM doing Clearcase, Clearquest and release management. This division seems to rely heavily on an internal WIki for much of their documentation and process flow. Spent the first few says getting set up, installing my environment, getting logins, etc. Saw a requirement for an Evil Twin trigger so I offered up mine. Seems mine was not tested all that well under Unix and I had to change some things to remove the vob tag prefix. Also, handling of clearprompt on Unix is a little problematic. Seems that clearprompt is not gui oriented unless you specify -prefer-gui and even then it acts irratic because it does not pay attention to "\n" to represent new lines so I stuck with the non gui specification under Unix.</p>
413                               
414                               <p class="entry-footer">
415                                  <span class="post-footers">Posted by  at  9:33 AM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000528.html">Permalink</a>
416                                  
417                                  
418                               </p>
419                            </div>
420                         </div>
421                      </div>
422                      
423                   </div>
424                </div>
425             </div>
426          </div>
427       </div>
428    </div>
429 </body>
430 </html>