Changes between Version 12 and Version 13 of NuWa_Slave

Show
Ignore:
Timestamp:
09/09/10 21:24:26 (14 years ago)
Author:
blyth (IP: 140.112.102.77)
Comment:

tack on the email

Legend:

Unmodified
Added
Removed
Modified
  • NuWa_Slave

    v12 v13  
    428428  
    429429 
    430  
    431  
    432  
    433  
     430= ''dybbin'' Approach Under Discussion = 
     431 
     432 
     433  * '''dybbin''' allows a NuWa installation to be copied to another location 
     434 
     435== email to David, Jiajie == 
     436 
     437{{{ 
     438 I like the elimination of a separate build in this dybbin 
     439 approach however I see several problems with usage of update builds 
     440 and externally imposed cron dybbin,  my suggested solutions : 
     441 
     442  * Update build 
     443       Are promoting usage of an update build, 
     444       which is prone to breakage on data model changes and is generally 
     445       the subject of negative prejudice. 
     446 
     447       Can eliminate this issue by making the dybinst command used by the slave 
     448          "./dybinst -c trunk project dybgaudi" 
     449       do a refresh when data model changes are detected. 
     450 
     451 Enforcing external cron cut-off times introduces issues (and leads to 
     452 complicated workarounds) : 
     453 
     454   * A build can be in-progress at cron dybbin time or the last build 
     455     can be broken ... meaning there is no valid build to copy. 
     456 
     457   * Uncoordinated between sites, the prevalent build at dybbin time 
     458     may differ between sites according to speed/breakage differences between slaves. 
     459 
     460 To avoid these issues (and complicated workarounds), 
     461 I suggest not to impose an external cron job but rather to to add a 
     462 final step to the dybinst slave build that (if the tests succeeded) 
     463 performs a dybbin copy "installation" into a directory named after the revision. 
     464 And performs purging to remove excess revision directories. 
     465 
     466One possible problem with this scheme is that our 'daily' might not match the 
     467'daily' elsewhere, but I think that could be handled, perhaps by having the master 
     468define the revision number corresponding to the current 'daily'. 
     469 
     470 
     471 Concerning coordination between slaves (although I have implemented 
     472 such a system in the ad-hoc daily.bash) I think supporting and explaining 
     473 complex procedures for this is not worth the effort/confusion. 
     474 
     475 Simply referring to builds by their real name : '''the revision number''' 
     476 and not the date eliminates the issue and benefits from direct 
     477 correspondence between the state of builds reported in the web interface 
     478 (including the timeline). 
     479 
     480 Users will want to use a build after a particular 
     481 feature has been added (or bug removed) ... thus they should 
     482 know the minimum revision they want. 
     483 They can then look for a corresponding build that the slave on 
     484 their cluster succeeded to build at : 
     485    http://dayabay.ihep.ac.cn/tracs/dybsvn/build/dybinst 
     486 
     487Yours, Simon 
     488}}} 
     489 
     490 
     491