SVN: toys/stbr/stbr.tcl
shadzik
shadzik at pld-linux.org
Tue May 15 04:27:56 CEST 2007
Author: shadzik
Date: Tue May 15 04:27:55 2007
New Revision: 8539
Modified:
toys/stbr/stbr.tcl
Log:
- add branch option
- version 0.4
Modified: toys/stbr/stbr.tcl
==============================================================================
--- toys/stbr/stbr.tcl (original)
+++ toys/stbr/stbr.tcl Tue May 15 04:27:55 2007
@@ -7,10 +7,11 @@
set cntr 0
set towho "./scripts/sent.txt"
set cvsroot ":pserver:cvs at cvs.pld-linux.org:/cvsroot"
+set usage "Usage: !stbr th-{ready|test} spec1\[:BRANCH\] spec2\[:BRANCH\] ..."
-proc cvs { spec } {
+proc cvs {spec branch} {
global cvsroot
- if {[catch {exec cvs -d $cvsroot log SPECS/$spec} results]} {
+ if {[catch {exec cvs -d $cvsroot log -r$branch SPECS/$spec} results]} {
return 0
}
return 1
@@ -21,22 +22,23 @@
bind pub * stbr, pub:stbr
proc pub:stbr {nick host hand chan arg} {
-global file back cntr logfile towho
+global file back cntr logfile towho usage
putcmdlog "#$hand# Noticed Send To Build Request Mail command";
set first [lindex $arg 0]
set second [lindex $arg 1]
set specs ""; append specs $second; append specs " "; append specs [lrange $arg 2 end]
set rspecs ""
-if {!([string match th-ready $first] || [string match th-test $first])} {putserv "privmsg $chan :$nick: Usage: !stbr th-{ready|test} spec1 spec2 ..."; return 0}
-if {([string length $second]<2)} {putserv "privmsg $chan :$nick: Usage: !stbr th-{ready|test} spec1 spec2 ..."; return 0}
+if {!([string match th-ready $first] || [string match th-test $first])} {putserv "privmsg $chan :$nick: $usage"; return 0}
+if {([string length $second]<2)} {putserv "privmsg $chan :$nick: $usage"; return 0}
if {$cntr<1} {incr cntr} {utimer 30 "set cntr 0"; putserv "privmsg $chan :$nick: I reached my STBR time limit (30sec). Please try later."; return 0}
set time [clock seconds]
set date [clock format $time -format "%d.%m.%Y %H:%M:%S"]
exec sqlite $logfile "INSERT INTO stbr VALUES('$date','$nick');"
foreach spec $specs {
+if {([string match *:* $spec])} {set splited [split $spec ":"];set spec [lindex $splited 0]; set branch [lindex $splited 1]} {set branch "HEAD"}
if {!([string match *.spec $spec])} { append spec ".spec"}
-if {([cvs $spec] == 0)} {putserv "privmsg $chan :$nick: There is no such spec ($spec) in PLD's repository."; return 0}
-lappend rspecs $spec
+if {([cvs $spec $branch] == 0)} {putserv "privmsg $chan :$nick: There is no such spec ($spec) on branch $branch in PLD's repository."; return 0}
+lappend rspecs $spec; append rspecs ":$branch"
if {[exec $file $nick $first $spec]==0} {putserv "privmsg $chan :$nick: An error occured. Couldn't send STBR Mail for $spec."; return 1}
set tfile [open $towho r]
gets $tfile person; append rspecs " (to $person)"
@@ -47,4 +49,4 @@
if {$cntr<1} {incr cntr} {utimer 30 "set cntr 0"; return 1}
}
-putlog "Send To Builder Request TCL v0.3 by shadzik loaded."
+putlog "Send To Builder Request TCL v0.4 by shadzik loaded."
More information about the pld-cvs-commit
mailing list