#from urllib.parse import quote #import koji #from kojiweb import util #def printValue($key, $value, $sep=', ') #if $key in ('brootid', 'buildroot_id') $value #elif $isinstance($value, list) $sep.join([$str($val) for $val in $value]) #elif $isinstance($value, dict) $sep.join(['%s=%s' % (($n == '' and "''" or $n), $v) for $n, $v in $value.items()]) #else $value #end if #end def #def printProperties($props) #echo ', '.join([$v is not None and '%s=%s' % ($n, $v) or $str($n) for $n, $v in $props.items()]) #end def #def printMap($vals, $prefix='') #for $key, $value in $vals.items() #if $key == 'properties' ${prefix}properties = $printProperties($value)
#elif $key != '__starstar' $prefix$key = $printValue($key, $value)
#end if #end for #end def #def printOpts($opts) #if $opts Options:
$printMap($opts, '  ') #end if #end def #if $task.method == 'buildSRPMFromSCM' SCM URL: $params[0]
#if $len($params) > 1 Build Tag: #if $buildTag.id $util.escapeHTML($buildTag.name) #else $util.escapeHTML($buildTag.name) #end if
#end if #if $len($params) > 2 $printOpts($params[2]) #end if #elif $task.method == 'buildSRPMFromCVS' CVS URL: $params[0] #elif $task.method == 'buildArch' SRPM: $params[0]
Build Tag: #if $buildTag.id $util.escapeHTML($buildTag.name) #else $util.escapeHTML($buildTag.name) #end if
Arch: $params[2]
Keep SRPM? #if $params[3] then 'yes' else 'no'#
#if $len($params) > 4 $printOpts($params[4]) #end if #elif $task.method == 'tagBuild' Destination Tag: $util.escapeHTML($destTag.name)
Build: $util.escapeHTML($koji.buildLabel($build)) #elif $task.method == 'buildNotification' #set $build = $params[1] #set $buildTarget = $params[2] Recipients: $printValue('', $params[0])
Build: $util.escapeHTML($koji.buildLabel($build))
#if $buildTarget Build Target: $util.escapeHTML($buildTarget.name)
#else Build Target: (no build target)
#end if Web URL: $params[3] #elif $task.method == 'tagNotification' Recipients: $printValue('', $params[0])
Successful?: #if $params[1] then 'yes' else 'no'#
#if $destTag Tagged Into: $util.escapeHTML($destTag.name)
#end if #if $srcTag #if $destTag then 'Moved From:' else 'Untagged From:'# $util.escapeHTML($srcTag.name)
#end if Build: $util.escapeHTML($koji.buildLabel($build))
#if $destTag then 'Tagged By:' else 'Untagged By:'# $util.escapeHTML($user.name)
Ignore Success?: #if $params[6] then 'yes' else 'no'#
#if $params[7] Failure Message: $params[7] #end if #elif $task.method == 'build' Source: $params[0]
Build Target: $util.escapeHTML($params[1])
$printOpts($params[2]) #elif $task.method == 'maven' SCM URL: $util.escapeHTML($params[0])
Build Target: $util.escapeHTML($params[1])
$printOpts($params[2]) #elif $task.method == 'buildMaven' SCM URL: $util.escapeHTML($params[0])
Build Tag: #if $buildTag.id $util.escapeHTML($buildTag.name) #else $util.escapeHTML($buildTag.name) #end if
#if $len($params) > 2 $printOpts($params[2]) #end if #elif $task.method == 'wrapperRPM' Spec File URL: $params[0]
#if 'locked' in $buildTarget #set $buildTag = $buildTarget.name Build Tag: #if $buildTag.id $util.escapeHTML($buildTag.name) #else $util.escapeHTML($buildTag.name) #end if
#else Build Target: $util.escapeHTML($buildTarget.name)
#end if #if $params[2] Build: $koji.buildLabel($params[2])
#end if #if $params[3] Task: $koji.taskLabel($wrapTask)
#end if #if $len($params) > 4 $printOpts($params[4]) #end if #elif $task.method == 'chainmaven' Builds:
#for $key, $val in $params[0].items() #end for
$key:$printMap($val)
Build Target: $util.escapeHTML($params[1])
#if $len($params) > 2 $printOpts($params[2]) #end if #elif $task.method == 'livecd' or $task.method == 'appliance' or $task.method == 'livemedia' Name: $util.escapeHTML($params[0])
Version: $util.escapeHTML($params[1])
Arch: $util.escapeHTML($params[2])
Build Target: $util.escapeHTML($params[3])
Kickstart File: $util.escapeHTML($params[4])
$printOpts($params[5]) #elif $task.method == 'image' Arches: #echo ', '.join($params[2])#
Build Target: $util.escapeHTML($params[3])
Installation Tree: $params[4]
$printOpts($params[5]) #elif $task.method == 'createLiveCD' or $task.method == 'createAppliance' or $task.method == 'createLiveMedia' #if $len($params) > 4: ## new method signature Arch: $util.escapeHTML($params[3])
Kickstart File: $util.escapeHTML($params[7])
#if $len($params) > 8 $printOpts($params[8]) #end if #else ## old method signature Arch: $util.escapeHTML($params[0])
Build Target: $util.escapeHTML($params[1])
Kickstart File: $util.escapeHTML($params[2])
#if $len($params) > 3 $printOpts($params[3]) #end if #end if #elif $task.method == 'createImage' #set $target = $params[4] Build Target: $util.escapeHTML($target.name)
Install Tree: $util.escapeHTML($params[7])
$printOpts($params[8]) #elif $task.method == 'winbuild' VM: $util.escapeHTML($params[0])
SCM URL: $util.escapeHTML($params[1])
Build Target: $util.escapeHTML($params[2])
#if $len($params) > 3 $printOpts($params[3]) #end if #elif $task.method == 'vmExec' VM: $util.escapeHTML($params[0])
Exec Params:
#for $info in $params[1] #if $isinstance($info, dict) $printMap($info, '    ') #else   $info
#end if #end for #if $len($params) > 2 $printOpts($params[2]) #end if #elif $task.method == 'newRepo' Tag: $util.escapeHTML($tag.name)
#if $len($params) > 1 $printOpts($params[1]) #end if #elif $task.method == 'distRepo' Tag: $util.escapeHTML($tag.name)
Repo ID: $params[1]
Keys: $printValue(0, $params[2])
$printOpts($params[3]) #elif $task.method == 'prepRepo' Tag: $util.escapeHTML($params[0].name) #elif $task.method == 'createrepo' Repo ID: $params[0]
Arch: $util.escapeHTML($params[1])
#set $oldrepo = $params[2] #if $oldrepo Old Repo ID: $oldrepo.id
Old Repo Creation: $koji.formatTimeLong($oldrepo.create_ts)
#end if #if $len($params) > 4 and $params[4] External Repos: $printValue(None, [ext['external_repo_name'] for ext in $params[3]])
#end if #elif $task.method == 'createdistrepo' Tag: $util.escapeHTML($tag.name)
Repo ID: $params[1]
Arch: $printValue(0, $params[2])
Keys: $printValue(0, $params[3])
Options: $printMap($params[4], '    ') #elif $task.method == 'dependantTask' Dependant Tasks:
#for $dep in $deps   $koji.taskLabel($dep)
#end for Subtasks:
#for $subtask in $params[1]   Method: $subtask[0]
  Parameters: #echo ', '.join([$str($subparam) for $subparam in $subtask[1]])#
#if $len($subtask) > 2 and $subtask[2]   Options:
$printMap($subtask[2], '    ') #end if
#end for #elif $task.method == 'chainbuild' Build Groups:
#set $groupNum = 0 #for $urls in $params[0] #set $groupNum += 1   $groupNum: #echo ', '.join($urls)#
#end for Build Target: $util.escapeHTML($params[1])
$printOpts($params[2]) #elif $task.method == 'waitrepo' Build Tag: $util.escapeHTML($params[0])
#if $params[1] Newer Than: $util.escapeHTML($params[1])
#end if #if $params[2] NVRs: $printValue('', $params[2]) #end if #elif $task.method == 'restart' Host: $util.escapeHTML($params[0].name)
#elif $task.method == 'restartVerify' Host: $util.escapeHTML($params[1].name)
Restart Task: $koji.taskLabel($rtask)
#elif $task.method == 'runroot' Build Tag: $params[0]
Arch: $util.escapeHTML($params[1])
$printOpts($params[3]) Commands: $util.escapeHTML($params[2])
#else $params #end if