· 6 years ago · Apr 04, 2019, 07:10 PM
1_listapi()
2addExternalRPM(rpminfo, external_repo, strict=True)
3 description: Import an external RPM
4
5 This call is mainly for testing. Normal access will be through
6 a host call
7addExternalRepoToTag(tag_info, repo_info, priority)
8 description: Add an external repo to a tag
9addGroupMember(group, user, strict=True)
10 description: Add user to group
11addHost(hostname, arches, krb_principal=None)
12 description: Add a host to the database
13addHostToChannel(hostname, channel_name, create=False)
14 description: Add the host to the specified channel
15
16 Channel must already exist unless create option is specified
17
18addRPMSig(an_rpm, data)
19 description: Store a signature header for an rpm
20
21 data: the signature header encoded as base64
22
23addVolume(name, strict=True)
24 description: Add a new storage volume in the database
25assignTask(task_id, host, force=False)
26 description: Assign a task to a host
27
28 Specify force=True to assign a non-free task
29
30build(src, target, opts=None, priority=None, channel=None)
31 description: Create a build task
32
33 priority: the amount to increase (or decrease) the task priority, relative
34 to the default priority; higher values mean lower priority; only
35 admins have the right to specify a negative priority here
36 channel: the channel to allocate the task to
37 Returns the task id
38
39buildFromCVS(url, tag)
40buildImage(arch, target, ksfile, img_type, opts=None, priority=None)
41 description:
42 Create an image using a kickstart file and group package list.
43
44buildMap()
45 description: Map which builds were used in the buildroots of other builds
46
47 To be used for garbage collection
48
49buildReferences(build, limit=None)
50cancelBuild(buildID)
51 description: Cancel the build with the given buildID
52
53 If the build is associated with a task, cancel the task as well.
54 Return True if the build was successfully canceled, False if not.
55cancelTask(task_id, recurse=True)
56 description: Cancel a task
57cancelTaskChildren(task_id)
58 description: Cancel a task's children, but not the task itself
59cancelTaskFull(task_id, strict=True)
60 description: Cancel a task and all tasks in its group
61chainBuild(srcs, target, opts=None, priority=None, channel=None)
62 description: Create a chained build task for building sets of packages in order
63
64 srcs: list of pkg lists, ie [[src00, src01, src03],[src20],[src30,src31],...]
65 where each of the top-level lists gets built and a new repo is created
66 before the next list is built.
67 target: build target
68 priority: the amount to increase (or decrease) the task priority, relative
69 to the default priority; higher values mean lower priority; only
70 admins have the right to specify a negative priority here
71 channel: the channel to allocate the task to
72 Returns a list of all the dependent task ids
73
74changeBuildVolume(build, volume, strict=True)
75 description: Move a build to a different storage volume
76checkTagAccess(tag_id, user_id=None)
77 description: Determine if user has access to tag package with tag.
78
79 Returns a tuple (access, override, reason)
80 access: a boolean indicating whether access is allowed
81 override: a boolean indicating whether access may be forced
82 reason: the reason access is blocked
83
84checkTagPackage(tag, pkg)
85 description: Check that pkg is in the list for tag. Returns true/false
86count(methodName, *args, **kw)
87 description: Execute the XML-RPC method with the given name and count the results.
88 A method return value of None will return O, a return value of type "list", "tuple", or "dict"
89 will return len(value), and a return value of any other type will return 1. An invalid
90 methodName will raise an AttributeError, and invalid arguments will raise a TypeError.
91createBuildTarget(name, build_tag, dest_tag)
92 description: Create a new build target
93createEmptyBuild(name, version, release, epoch, owner=None)
94createExternalRepo(name, url)
95 description: Create a new external repo with the given name and url.
96 Return a map containing the id, name, and url
97 of the new repo.
98createMavenBuild(build_info, maven_info)
99 description:
100 Associate Maven metadata with an existing build. The build must
101 not already have associated Maven metadata. maven_info must be a dict
102 containing group_id, artifact_id, and version entries.
103
104createNotification(user_id, package_id, tag_id, success_only)
105 description: Create a new notification. If the user_id does not match the currently logged-in user
106 and the currently logged-in user is not an admin, raise a GenericError.
107createTag(name, parent=None, arches=None, perm=None, locked=False, maven_support=False, maven_include_all=False)
108 description: Create a new tag
109createUser(username, status=None, krb_principal=None)
110 description: Add a user to the database
111createWinBuild(build_info, win_info)
112 description:
113 Associate Windows metadata with an existing build. The build must
114 not already have associated Windows metadata. win_info must be a dict
115 containing a platform entry.
116
117debugFunction(name, *args, **kwargs)
118deleteBuild(build, strict=True, min_ref_age=604800)
119 description: delete a build, if possible
120
121 Attempts to delete a build. A build can only be deleted if it is
122 unreferenced.
123
124 If strict is true (default), an exception is raised if the build cannot
125 be deleted.
126
127 Note that a deleted build is not completely gone. It is marked deleted and some
128 data remains in the database. Mainly, the rpms are removed.
129
130 Note in particular that deleting a build DOES NOT free any NVRs (or NVRAs) for
131 reuse.
132
133 Returns True if successful, False otherwise
134
135deleteBuildTarget(buildTargetInfo)
136 description: Delete the build target with the given name. If no build target
137 exists, raise a GenericError.
138deleteExternalRepo(info)
139 description: Delete an external repo
140deleteNotification(id)
141 description: Delete the notification with the given ID. If the currently logged-in
142 user is not the owner of the notification or an admin, raise a GenericError.
143deleteTag(tagInfo)
144 description: Delete the specified tag.
145disableHost(hostname)
146 description: Mark a host as disabled
147disableUser(username)
148 description: Disable logins by the specified user
149downloadTaskOutput(taskID, fileName, offset=0, size=-1)
150 description: Download the file with the given name, generated by the task with the
151 given ID.
152dropGroupMember(group, user)
153 description: Drop user from group
154echo(*args)
155editBuildTarget(buildTargetInfo, name, build_tag, dest_tag)
156 description: Set the build_tag and dest_tag of an existing build_target to new values
157editExternalRepo(info, name=None, url=None)
158 description: Edit an existing external repo
159editHost(hostInfo, **kw)
160 description: Edit information for an existing host.
161 hostInfo specifies the host to edit, either as an integer (id)
162 or a string (name).
163 fields to be changed are specified as keyword parameters:
164 - arches
165 - capacity
166 - description
167 - comment
168
169 Returns True if changes are made to the database, False otherwise.
170
171editTag(tagInfo, name, arches, locked, permissionID)
172 description: Edit information for an existing tag.
173editTag2(tagInfo, **kwargs)
174 description: Edit information for an existing tag.
175
176 tagInfo specifies the tag to edit
177 fields changes are provided as keyword arguments:
178 name: rename the tag
179 arches: change the arch list
180 locked: lock or unlock the tag
181 perm: change the permission requirement
182 maven_support: whether Maven repos should be generated for the tag
183 maven_include_all: include every build in this tag (including multiple
184 versions of the same package) in the Maven repo
185
186editTagExternalRepo(tag_info, repo_info, priority)
187 description: Edit a tag<->external repo association
188 This allows you to update the priority without removing/adding the repo.
189enableHost(hostname)
190 description: Mark a host as enabled
191enableUser(username)
192 description: Enable logins by the specified user
193error()
194 description: debugging. raise an error
195exclusiveSession(*args, **opts)
196 description: Make this session exclusive
197fault()
198 description: debugging. raise an error
199filterResults(methodName, *args, **kw)
200 description: Execute the XML-RPC method with the given name and filter the results
201 based on the options specified in the keywork option "filterOpts". The method
202 must return a list of maps. Any other return type will result in a TypeError.
203 Currently supported options are:
204 - offset: the number of elements to trim off the front of the list
205 - limit: the maximum number of results to return
206 - order: the map key to use to sort the list; the list will be sorted before
207 offset or limit are applied
208 - noneGreatest: when sorting, consider 'None' to be greater than all other values;
209 python considers None less than all other values, but Postgres sorts
210 NULL higher than all other values; default to True for consistency
211 with database sorts
212
213findBuildID(X)
214freeTask(task_id)
215 description: Free a task
216getAPIVersion()
217getActiveRepos()
218 description: Get data on all active repos
219
220 This is a list of all the repos that the repo daemon needs to worry about.
221
222getAllArches()
223 description: Return a list of all (canonical) arches available from hosts
224getAllPerms()
225 description: Get a list of all permissions in the system. Returns a list of maps. Each
226 map contains the following keys:
227
228 - id
229 - name
230
231getArchive(archive_id, strict=False)
232 description:
233 Get information about the archive with the given ID. Returns a map
234 containing the following keys:
235
236 id: unique id of the archive file (integer)
237 type_id: id of the archive type (Java jar, Solaris pkg, Windows exe, etc.) (integer)
238 build_id: id of the build that generated this archive (integer)
239 buildroot_id: id of the buildroot where this archive was built (integer)
240 filename: name of the archive (string)
241 size: size of the archive (integer)
242 md5sum: md5sum of the archive (string)
243
244 If the archive is part of a Maven build, the following keys will be included:
245 group_id
246 artifact_id
247 version
248 If the archive is part of a Windows builds, the following keys will be included:
249 relpath
250 platforms
251 flags
252
253getArchiveFile(archive_id, filename)
254 description:
255 Get information about a file with the given filename
256 contained in the archive with the given ID.
257 Returns a map with with following keys:
258
259 archive_id: id of the archive the file is contained in (integer)
260 name: name of the file (string)
261 size: uncompressed size of the file (integer)
262
263getArchiveType(filename=None, type_name=None, type_id=None, strict=False)
264 description:
265 Get the archive type for the given filename, type_name, or type_id.
266
267getArchiveTypes()
268 description: Return a list of all supported archivetypes
269getAverageBuildDuration(package)
270 description: Get the average duration of a build of the given package.
271 Returns a floating-point value indicating the
272 average number of seconds the package took to build. If the package
273 has never been built, return None.
274getBuild(buildInfo, strict=False)
275 description: Return information about a build. buildID may be either
276 a int ID, a string NVR, or a map containing 'name', 'version'
277 and 'release. A map will be returned containing the following
278 keys:
279 id: build ID
280 package_id: ID of the package built
281 package_name: name of the package built
282 version
283 release
284 epoch
285 nvr
286 state
287 task_id: ID of the task that kicked off the build
288 owner_id: ID of the user who kicked off the build
289 owner_name: name of the user who kicked off the build
290 volume_id: ID of the storage volume
291 volume_name: name of the storage volume
292 creation_event_id: id of the create_event
293 creation_time: time the build was created (text)
294 creation_ts: time the build was created (epoch)
295 completion_time: time the build was completed (may be null)
296 completion_ts: time the build was completed (epoch, may be null)
297
298 If there is no build matching the buildInfo given, and strict is specified,
299 raise an error. Otherwise return None.
300
301getBuildConfig(tag, event=None)
302 description: Return build configuration associated with a tag
303getBuildNotification(id)
304 description: Get the build notification with the given ID. Return None
305 if there is no notification with the given ID.
306getBuildNotifications(userID=None)
307 description: Get build notifications for the user with the given ID. If no ID
308 is specified, get the notifications for the currently logged-in user. If
309 there is no currently logged-in user, raise a GenericError.
310getBuildTarget(info, event=None, strict=False)
311 description: Return the build target with the given name or ID.
312 If there is no matching build target, return None.
313getBuildTargets(info=None, event=None, buildTagID=None, destTagID=None, queryOpts=None)
314 description: Return data on all the build targets
315
316 provide event to query at a different time
317getBuildroot(buildrootID, strict=False)
318 description: Return information about a buildroot. buildrootID must be an int ID.
319getBuildrootListing(id)
320 description: Return a list of packages in the buildroot
321getChangelogEntries(buildID=None, taskID=None, filepath=None, author=None, before=None, after=None, queryOpts=None)
322 description: Get changelog entries for the build with the given ID,
323 or for the rpm generated by the given task at the given path
324
325 - author: only return changelogs with a matching author
326 - before: only return changelogs from before the given date (in UTC)
327 (a datetime object, a string in the 'YYYY-MM-DD HH24:MI:SS format, or integer seconds
328 since the epoch)
329 - after: only return changelogs from after the given date (in UTC)
330 (a datetime object, a string in the 'YYYY-MM-DD HH24:MI:SS format, or integer seconds
331 since the epoch)
332 - queryOpts: query options used by the QueryProcessor
333
334 If "order" is not specified in queryOpts, results will be returned in reverse chronological
335 order.
336
337 Results will be returned as a list of maps with 'date', 'author', and 'text' keys.
338 If there are no results, an empty list will be returned.
339
340getChannel(channelInfo, strict=False)
341 description: Return information about a channel.
342getEvent(id)
343 description:
344 Get information about the event with the given id.
345
346 A map will be returned with the following keys:
347 - id (integer): id of the event
348 - ts (float): timestamp the event was created, in
349 seconds since the epoch
350
351 If no event with the given id exists, an error will be raised.
352
353getExternalRepo(info, strict=False, event=None)
354 description: Get information about a single external repo.
355 info can either be a string (name) or an integer (id).
356 Returns a map containing the id, name, and url of the
357 repo. If strict is True and no external repo has the
358 given name or id, raise an error.
359getExternalRepoList(tag_info, event=None)
360 description:
361 Get an ordered list of all external repos associated with the tags in the
362 hierarchy rooted at the specified tag. External repos will be returned
363 depth-first, and ordered by priority for each tag. Duplicates will be
364 removed. Returns a list of maps containing the following fields:
365
366 tag_id
367 tag_name
368 external_repo_id
369 external_repo_name
370 url
371 priority
372
373getFullInheritance(tag, event=None, reverse=False, stops={}, jumps={})
374getGlobalInheritance(event=None)
375getGroupMembers(group)
376 description: Get the members of a group
377getHost(hostInfo, strict=False)
378 description: Get information about the given host. hostInfo may be
379 either a string (hostname) or int (host id). A map will be returned
380 containign the following data:
381
382 - id
383 - user_id
384 - name
385 - arches
386 - task_load
387 - capacity
388 - description
389 - comment
390 - ready
391 - enabled
392
393getImageInfo(imageID=None, taskID=None, strict=False)
394 description:
395 Return the row from imageinfo given an image_id OR build_root_id.
396 It is an error if neither are specified, and image_id takes precedence.
397 Filesize will be reported as a string if it exceeds the 32-bit signed
398 integer limit.
399
400getInheritanceData(tag, event=None)
401 description: Return inheritance data for tag
402getLastEvent(before=None)
403 description:
404 Get the id and timestamp of the last event recorded in the system.
405 Events are usually created as the result of a configuration change
406 in the database.
407
408 If "before" (int or float) is specified, return the last event
409 that occurred before that time (in seconds since the epoch).
410 If there is no event before the given time, an error will be raised.
411
412 Note that due to differences in precision between the database and python,
413 this method can return an event with a timestamp the same or slightly higher
414 (by a few microseconds) than the value of "before" provided. Code using this
415 method should check that the timestamp returned is in fact lower than the parameter.
416 When trying to find information about a specific event, the getEvent() method
417 should be used.
418
419getLastHostUpdate(hostID)
420 description: Return the latest update timestampt for the host
421
422 The timestamp represents the last time the host with the given
423 ID contacted the hub. Returns None if the host has never contacted
424 the hub.
425getLatestBuilds(tag, event=None, package=None, type=None)
426 description: List latest builds for tag (inheritance enabled)
427getLatestMavenArchives(tag, event=None, inherit=True)
428 description: Return a list of the latest Maven archives in the tag, as of the given event
429 (or now if event is None). If inherit is True, follow the tag hierarchy
430 and return a list of the latest archives for all tags in the tree.
431getLatestRPMS(tag, package=None, arch=None, event=None, rpmsigs=False, type=None)
432 description: List latest RPMS for tag (inheritance enabled)
433getLoggedInUser()
434 description: Return information about the currently logged-in user. Returns data
435 in the same format as getUser(). If there is no currently logged-in user,
436 return None.
437getMavenArchive(archive_id, strict=False)
438 description:
439 Retrieve Maven-specific information about an archive.
440 Returns a map containing the following keys:
441
442 archive_id: id of the build (integer)
443 group_id: Maven groupId (string)
444 artifact_id: Maven artifact_Id (string)
445 version: Maven version (string)
446
447getMavenBuild(buildInfo, strict=False)
448 description:
449 Retrieve Maven-specific information about a build.
450 buildInfo can be either a string (n-v-r) or an integer
451 (build ID).
452 Returns a map containing the following keys:
453
454 build_id: id of the build (integer)
455 group_id: Maven groupId (string)
456 artifact_id: Maven artifact_Id (string)
457 version: Maven version (string)
458
459getPackage(info, strict=False, create=False)
460 description: Get the id,name for package
461getPackageConfig(tag, pkg, event=None)
462 description: Get config for package in tag
463getPackageID(name)
464getPerms()
465 description: Get a list of the permissions granted to the currently logged-in user.
466getRPM(rpminfo, strict=False, multi=False)
467 description: Get information about the specified RPM
468
469 rpminfo may be any one of the following:
470 - a int ID
471 - a string N-V-R.A
472 - a string N-V-R.A@location
473 - a map containing 'name', 'version', 'release', and 'arch'
474 (and optionally 'location')
475
476 If specified, location should match the name of an external repo
477
478 A map will be returned, with the following keys:
479 - id
480 - name
481 - version
482 - release
483 - arch
484 - epoch
485 - payloadhash
486 - size
487 - buildtime
488 - build_id
489 - buildroot_id
490 - external_repo_id
491 - external_repo_name
492
493 If there is no RPM with the given ID, None is returned, unless strict
494 is True in which case an exception is raised
495
496 If more than one RPM matches, and multi is True, then a list of results is
497 returned. If multi is False, a single match is returned (an internal one if
498 possible).
499
500getRPMDeps(rpmID, depType=None, queryOpts=None)
501 description: Return dependency information about the RPM with the given ID.
502 If depType is specified, restrict results to dependencies of the given type.
503 Otherwise, return all dependency information. A list of maps will be returned,
504 each with the following keys:
505 - name
506 - version
507 - flags
508 - type
509
510 If there is no RPM with the given ID, or the RPM has no dependency information,
511 an empty list will be returned.
512
513getRPMFile(rpmID, filename)
514 description:
515 Get info about the file in the given RPM with the given filename.
516 A map will be returned with the following keys:
517 - rpm_id
518 - name
519 - digest
520 - md5 (alias for digest)
521 - digest_algo
522 - size
523 - flags
524
525 If no such file exists, an empty map will be returned.
526
527getRPMHeaders(rpmID=None, taskID=None, filepath=None, headers=None)
528 description:
529 Get the requested headers from the rpm. Header names are case-insensitive.
530 If a header is requested that does not exist an exception will be raised.
531 Returns a map of header names to values. If the specified ID
532 is not valid or the rpm does not exist on the file system, an empty map
533 will be returned.
534
535getRepo(tag, state=None, event=None)
536getSessionInfo()
537getTag(tagInfo, strict=False, event=None)
538 description: Get tag information based on the tagInfo. tagInfo may be either
539 a string (the tag name) or an int (the tag ID).
540 Returns a map containing the following keys:
541
542 - id
543 - name
544 - perm_id (may be null)
545 - perm (name, may be null)
546 - arches (may be null)
547 - locked
548 - maven_support
549 - maven_include_all
550
551 If there is no tag matching the given tagInfo, and strict is False,
552 return None. If strict is True, raise a GenericError.
553
554 Note that in order for a tag to 'exist', it must have an active entry
555 in tag_config. A tag whose name appears in the tag table but has no
556 active tag_config entry is considered deleted.
557
558getTagExternalRepos(tag_info=None, repo_info=None, event=None)
559 description:
560 Get a list of tag<->external repo associations.
561
562 Returns a map containing the following fields:
563 tag_id
564 tag_name
565 external_repo_id
566 external_repo_name
567 url
568 priority
569
570getTagGroups(tag, event=None, inherit=True, incl_pkgs=True, incl_reqs=True)
571 description: Return group data for the tag with blocked entries removed
572
573 Also scrubs data into an xmlrpc-safe format (no integer keys)
574
575getTagID(info, strict=False, create=False)
576 description: Get the id for tag
577getTaskChildren(task_id, request=False)
578 description: Return a list of the children
579 of the Task with the given ID.
580getTaskDescendents(task_id, request=False)
581 description: Get all descendents of the task with the given ID.
582 Return a map of task_id -> list of child tasks. If the given
583 task has no descendents, the map will contain a single elements
584 mapping the given task ID to an empty list. Map keys will be strings
585 representing integers, due to limitations in xmlrpclib. If "request"
586 is true, the parameters sent with the xmlrpc request will be decoded and
587 included in the map.
588getTaskInfo(task_id, request=False)
589 description: Get information about a task
590getTaskRequest(taskId)
591getTaskResult(taskId)
592getUser(userInfo=None, strict=False)
593 description: Return information about a user. userInfo may be either a str
594 (Kerberos principal) or an int (user id). A map will be returned with the
595 following keys:
596 id: user id
597 name: user name
598 status: user status (int), may be null
599 usertype: user type (int), 0 person, 1 for host, may be null
600 krb_principal: the user's Kerberos principal
601getUserPerms(userID)
602 description: Get a list of the permissions granted to the user with the given ID.
603getVolume(volume, strict=False)
604getWinArchive(archive_id, strict=False)
605 description:
606 Retrieve Windows-specific information about an archive.
607 Returns a map containing the following keys:
608
609 archive_id: id of the build (integer)
610 relpath: the relative path where the file is located (string)
611 platforms: space-separated list of platforms the file is suitable for use on (string)
612 flags: space-separated list of flags used when building the file (fre, chk) (string)
613
614getWinBuild(buildInfo, strict=False)
615 description:
616 Retrieve Windows-specific information about a build.
617 buildInfo can be either a string (n-v-r) or an integer
618 (build ID).
619 Returns a map containing the following keys:
620
621 build_id: id of the build (integer)
622 platform: the platform the build was performed on (string)
623
624grantPermission(userinfo, permission, create=False)
625 description: Grant a permission to a user
626groupListAdd(taginfo, grpinfo, block=False, force=False, **opts)
627 description: Add to (or update) group list for tag
628groupListBlock(taginfo, grpinfo)
629 description: Block the group in tag
630groupListRemove(taginfo, grpinfo, force=False)
631 description: Remove group from the list for tag
632
633 Really this shouldn't be used except in special cases
634 Most of the time you really want to use the block or unblock functions
635
636groupListUnblock(taginfo, grpinfo)
637 description: Unblock the group in tag
638
639 If the group is blocked in this tag, then simply remove the block.
640 Otherwise, raise an error
641
642groupPackageListAdd(taginfo, grpinfo, pkg_name, block=False, force=False, **opts)
643 description: Add package to group for tag
644groupPackageListBlock(taginfo, grpinfo, pkg_name)
645 description: Block the package in group-tag
646groupPackageListRemove(taginfo, grpinfo, pkg_name, force=False)
647 description: Remove package from the list for group-tag
648
649 Really this shouldn't be used except in special cases
650 Most of the time you really want to use the block or unblock functions
651
652groupPackageListUnblock(taginfo, grpinfo, pkg_name)
653 description: Unblock the package in group-tag
654
655 If blocked (directly) in this tag, then simply remove the block.
656 Otherwise, raise an error
657
658groupReqListAdd(taginfo, grpinfo, reqinfo, block=False, force=False, **opts)
659 description: Add group requirement to group for tag
660groupReqListBlock(taginfo, grpinfo, reqinfo)
661 description: Block the group requirement in group-tag
662groupReqListRemove(taginfo, grpinfo, reqinfo, force=False)
663 description: Remove group requirement from the list for group-tag
664
665 Really this shouldn't be used except in special cases
666 Most of the time you really want to use the block or unblock functions
667
668groupReqListUnblock(taginfo, grpinfo, reqinfo)
669 description: Unblock the group requirement in group-tag
670
671 If blocked (directly) in this tag, then simply remove the block.
672 Otherwise, raise an error
673
674hasPerm(perm)
675 description: Check if the logged-in user has the given permission. Return False if
676 they do not have the permission, or if they are not logged-in.
677hello(*args)
678host.assertPolicy(name, data, default='deny')
679host.checkPolicy(name, data, default='deny', strict=False)
680host.closeTask(task_id, response)
681host.completeBuild(task_id, build_id, srpm, rpms, brmap=None, logs=None)
682 description: Import final build contents into the database
683host.completeMavenBuild(task_id, build_id, maven_results, rpm_results)
684 description: Complete the Maven build.
685host.completeWinBuild(task_id, build_id, results, rpm_results)
686 description: Complete a Windows build
687host.createMavenBuild(build_info, maven_info)
688 description:
689 Associate Maven metadata with an existing build. Used
690 by the rpm2maven plugin.
691
692host.failBuild(task_id, build_id)
693 description: Mark the build as failed. If the current state is not
694 'BUILDING', or the current competion_time is not null, a
695 GenericError will be raised.
696host.failTask(task_id, response)
697host.freeTasks(tasks)
698host.getHost()
699 description: Return information about this host
700host.getHostTasks()
701host.getID()
702host.getLoadData()
703host.getTask()
704host.importArchive(filepath, buildinfo, type, typeInfo)
705 description:
706 Import an archive file and associate it with a build. The archive can
707 be any non-rpm filetype supported by Koji. Used by the rpm2maven plugin.
708
709host.importImage(task_id, filename, filesize, arch, mediatype, hash, rpmlist)
710 description:
711 Import a built image, populating the database with metadata and
712 moving the image to its final location.
713
714host.importWrapperRPMs(task_id, build_id, rpm_results)
715 description: Import the wrapper rpms and associate them with the given build. The build
716 must not have any existing rpms associated with it.
717host.initBuild(data)
718 description: Create a stub build entry.
719
720 This is done at the very beginning of the build to inform the
721 system the build is underway.
722
723host.initMavenBuild(task_id, build_info, maven_info)
724 description: Create a new in-progress Maven build
725 Synthesize the release number by taking the (integer) release of the
726 last successful build and incrementing it.
727host.initWinBuild(task_id, build_info, win_info)
728 description:
729 Create a new in-progress Windows build.
730
731host.isEnabled()
732host.moveBuildToScratch(task_id, srpm, rpms, logs=None)
733 description: Move a completed scratch build into place (not imported)
734host.moveMavenBuildToScratch(task_id, results, rpm_results)
735 description: Move a completed Maven scratch build into place (not imported)
736host.moveWinBuildToScratch(task_id, results, rpm_results)
737 description: Move a completed Windows scratch build into place (not imported)
738host.newBuildRoot(repo, arch, task_id=None)
739host.openTask(task_id)
740host.repoAddRPM(repo_id, path)
741 description: Add an uploaded rpm to a repo
742host.repoDone(repo_id, data, expire=False)
743 description: Move repo data into place, mark as ready, and expire earlier repos
744
745 repo_id: the id of the repo
746 data: a dictionary of the form { arch: (uploadpath, files), ...}
747 expire(optional): if set to true, mark the repo expired immediately*
748
749 * This is used when a repo from an older event is generated
750
751host.repoInit(tag, with_src=False, with_debuginfo=False, event=None)
752 description: Initialize a new repo for tag
753host.setBuildRootList(brootid, rpmlist, task_id=None)
754host.setBuildRootState(brootid, state, task_id=None)
755host.setTaskWeight(task_id, weight)
756host.subtask(method, arglist, parent, **opts)
757host.subtask2(_HostExports__parent, _HostExports__taskopts, _HostExports__method, *args, **opts)
758 description: A wrapper around subtask with optional signature
759
760 Parameters:
761 __parent: task id of the parent task
762 __taskopts: dictionary of task options
763 __method: the method to be invoked
764
765 Remaining args are passed on to the subtask
766
767host.tagBuild(task_id, tag, build, force=False, fromtag=None)
768 description: Tag a build (host version)
769
770 This tags as the user who owns the task
771
772 If fromtag is specified, also untag the package (i.e. move in a single
773 transaction)
774
775 No return value
776
777host.tagNotification(is_successful, tag_id, from_id, build_id, user_id, ignore_success=False, failure_msg='')
778 description: Create a tag notification message.
779 Handles creation of tagNotification tasks for hosts.
780host.taskSetWait(parent, tasks)
781host.taskWait(parent)
782host.taskWaitResults(parent, tasks)
783host.updateBuildRootList(brootid, rpmlist, task_id=None)
784host.updateBuildrootArchives(brootid, task_id, archives, project=False)
785host.updateHost(task_load, ready)
786host.updateMavenBuildRootList(brootid, task_id, mavenlist, ignore=None, project=False, ignore_unknown=False)
787importArchive(filepath, buildinfo, type, typeInfo)
788 description:
789 Import an archive file and associate it with a build. The archive can
790 be any non-rpm filetype supported by Koji.
791
792 filepath: path to the archive file (relative to the Koji workdir)
793 buildinfo: information about the build to associate the archive with
794 May be a string (NVR), integer (buildID), or dict (containing keys: name, version, release)
795 type: type of the archive being imported. Currently supported archive types: maven, win
796 typeInfo: dict of type-specific information
797
798importBuildInPlace(build)
799 description: Import a package already in the packages directory
800
801 This is used for bootstrapping the database
802 Parameters:
803 build: a dictionary with fields: name, version, release
804
805importRPM(path, basename)
806 description: Import an RPM into the database.
807
808 The file must be uploaded first.
809
810krbLogin(*args, **opts)
811listArchiveFiles(archive_id, queryOpts=None)
812 description:
813 Get information about the files contained in the archive with the given ID.
814 Returns a list of maps with with following keys:
815
816 archive_id: id of the archive the file is contained in (integer)
817 name: name of the file (string)
818 size: uncompressed size of the file (integer)
819
820listArchives(buildID=None, buildrootID=None, componentBuildrootID=None, hostID=None, type=None, filename=None, size=None, md5sum=None, typeInfo=None, queryOpts=None)
821 description:
822 Retrieve information about archives.
823 If buildID is not null it will restrict the list to archives built by the build with that ID.
824 If buildrootID is not null it will restrict the list to archives built in the buildroot with that ID.
825 If componentBuildrootID is not null it will restrict the list to archives that were present in the
826 buildroot with that ID.
827 If hostID is not null it will restrict the list to archives built on the host with that ID.
828 If filename, size, and/or md5sum are not null it will filter the results to entries matching the provided values.
829
830 Returns a list of maps containing the following keys:
831
832 id: unique id of the archive file (integer)
833 type_id: id of the archive type (Java jar, Solaris pkg, Windows exe, etc.) (integer)
834 type_name: name of the archive type
835 type_description: description of the archive
836 type_extensions: valid extensions for the type
837 build_id: id of the build that generated this archive (integer)
838 buildroot_id: id of the buildroot where this archive was built (integer)
839 filename: name of the archive (string)
840 size: size of the archive (integer)
841 md5sum: md5sum of the archive (string)
842
843 If componentBuildrootID is specified, then the map will also contain the following key:
844 project: whether the archive was pulled in as a project dependency, or as part of the
845 build environment setup (boolean)
846
847 If 'type' is specified, then the archives listed will be limited
848 those associated with additional metadata of the given type.
849 Currently supported types are:
850
851 maven, win
852
853 If 'maven' is specified as a type, each returned map will contain
854 these additional keys:
855
856 group_id: Maven groupId (string)
857 artifact_id: Maven artifactId (string)
858 version: Maven version (string)
859
860 if 'win' is specified as a type, each returned map will contain
861 these additional keys:
862
863 relpath: the relative path where the file is located (string)
864 platforms: space-separated list of platforms the file is suitable for use on (string)
865 flags: space-separated list of flags used when building the file (fre, chk) (string)
866
867 typeInfo is a dict that can be used to filter the output by type-specific info.
868 For the 'maven' type, this dict may contain one or more of group_id, artifact_id, or version,
869 and the output will be restricted to archives with matching attributes.
870
871 If there are no archives matching the selection criteria,
872 an empty list is returned.
873
874listBuildRPMs(build)
875 description: Get information about all the RPMs generated by the build with the given
876 ID. A list of maps is returned, each map containing the following keys:
877
878 - id
879 - name
880 - version
881 - release
882 - arch
883 - epoch
884 - payloadhash
885 - size
886 - buildtime
887 - build_id
888 - buildroot_id
889
890 If no build has the given ID, or the build generated no RPMs, an empty list is returned.
891listBuildroots(hostID=None, tagID=None, state=None, rpmID=None, archiveID=None, taskID=None, buildrootID=None, queryOpts=None)
892 description: Return a list of matching buildroots
893
894 Optional args:
895 hostID - only buildroots on host.
896 tagID - only buildroots for tag.
897 state - only buildroots in state (may be a list)
898 rpmID - only buildroots the specified rpm was used in
899 archiveID - only buildroots the specified archive was used in
900 taskID - only buildroots associated with task.
901 buildrootID - only the specified buildroot
902 queryOpts - query options
903
904listBuilds(packageID=None, userID=None, taskID=None, prefix=None, state=None, volumeID=None, createdBefore=None, createdAfter=None, completeBefore=None, completeAfter=None, type=None, typeInfo=None, queryOpts=None)
905 description: List package builds.
906 If packageID is specified, restrict the results to builds of the specified package.
907 If userID is specified, restrict the results to builds owned by the given user.
908 If taskID is specfied, restrict the results to builds with the given task ID. If taskID is -1,
909 restrict the results to builds with a non-null taskID.
910 If volumeID is specified, restrict the results to builds stored on that volume
911 One or more of packageID, userID, volumeID, and taskID may be specified.
912 If prefix is specified, restrict the results to builds whose package name starts with that
913 prefix.
914 If createdBefore and/or createdAfter are specified, restrict the results to builds whose
915 creation_time is before and/or after the given time.
916 If completeBefore and/or completeAfter are specified, restrict the results to builds whose
917 completion_time is before and/or after the given time.
918 The time may be specified as a floating point value indicating seconds since the Epoch (as
919 returned by time.time()) or as a string in ISO format ('YYYY-MM-DD HH24:MI:SS').
920 If type is not None, only list builds of the associated type. Currently the supported types are 'maven' and 'win'.
921 if typeInfo is not None, only list builds with matching type-specific info. Must be used in conjunction with
922 the type parameter.
923 Currently the only supported type is 'maven', and typeInfo is a dict containing
924 one or more of group_id, artifact_id, and/or version. Output will be restricted to builds with
925 matching Maven metadata.
926
927 Returns a list of maps. Each map contains the following keys:
928
929 - build_id
930 - version
931 - release
932 - epoch
933 - state
934 - package_id
935 - package_name
936 - name (same as package_name)
937 - nvr (synthesized for sorting purposes)
938 - owner_id
939 - owner_name
940 - volume_id
941 - volume_name
942 - creation_event_id
943 - creation_time
944 - creation_ts
945 - completion_time
946 - completion_ts
947 - task_id
948
949 If type == 'maven', each map will also contain the following keys:
950
951 - maven_group_id
952 - maven_artifact_id
953 - maven_version
954
955 If no builds match, an empty list is returned.
956
957listChannels(hostID=None)
958 description: List channels. If hostID is specified, only list
959 channels associated with the host with that ID.
960listExternalRepos(info=None, url=None, event=None, queryOpts=None)
961 description: Get a list of external repos. If info is not None it may be a
962 string (name) or an integer (id).
963 If url is not None, filter the list of repos to those matching the
964 given url.
965listHosts(arches=None, channelID=None, ready=None, enabled=None, userID=None, queryOpts=None)
966 description: Get a list of hosts. "arches" is a list of string architecture
967 names, e.g. ['i386', 'ppc64']. If one of the arches associated with a given
968 host appears in the list, it will be included in the results. If "ready" and "enabled"
969 are specified, only hosts with the given value for the respective field will
970 be included.
971listPackages(tagID=None, userID=None, pkgID=None, prefix=None, inherited=False, with_dups=False, event=None)
972 description: List if tagID and/or userID is specified, limit the
973 list to packages belonging to the given user or with the
974 given tag.
975
976 A list of maps is returned. Each map contains the
977 following keys:
978
979 - package_id
980 - package_name
981
982 If tagID, userID, or pkgID are specified, the maps will also contain the
983 following keys.
984
985 - tag_id
986 - tag_name
987 - owner_id
988 - owner_name
989 - extra_arches
990 - blocked
991
992listRPMFiles(rpmID, queryOpts=None)
993 description: List files associated with the RPM with the given ID. A list of maps
994 will be returned, each with the following keys:
995 - name
996 - digest
997 - md5 (alias for digest)
998 - digest_algo
999 - size
1000 - flags
1001
1002 If there is no RPM with the given ID, or that RPM contains no files,
1003 an empty list will be returned.
1004listRPMs(buildID=None, buildrootID=None, imageID=None, componentBuildrootID=None, hostID=None, arches=None, queryOpts=None)
1005 description: List RPMS. If buildID, imageID and/or buildrootID are specified,
1006 restrict the list of RPMs to only those RPMs that are part of that
1007 build, or were built in that buildroot. If componentBuildrootID is specified,
1008 restrict the list to only those RPMs that will get pulled into that buildroot
1009 when it is used to build another package. A list of maps is returned, each map
1010 containing the following keys:
1011
1012 - id
1013 - name
1014 - version
1015 - release
1016 - nvr (synthesized for sorting purposes)
1017 - arch
1018 - epoch
1019 - payloadhash
1020 - size
1021 - buildtime
1022 - build_id
1023 - buildroot_id
1024 - external_repo_id
1025 - external_repo_name
1026
1027 If componentBuildrootID is specified, two additional keys will be included:
1028 - component_buildroot_id
1029 - is_update
1030
1031 If no build has the given ID, or the build generated no RPMs,
1032 an empty list is returned.
1033listTagged(tag, event=None, inherit=False, prefix=None, latest=False, package=None, owner=None, type=None)
1034 description: List builds tagged with tag
1035listTaggedArchives(tag, event=None, inherit=False, latest=False, package=None, type=None)
1036 description: List archives and builds within a tag
1037listTaggedRPMS(tag, event=None, inherit=False, latest=False, package=None, arch=None, rpmsigs=False, owner=None, type=None)
1038 description: List rpms and builds within tag
1039listTags(build=None, package=None, queryOpts=None)
1040 description: List tags. If build is specified, only return tags associated with the
1041 given build. If package is specified, only return tags associated with the
1042 specified package. If neither is specified, return all tags. Build can be
1043 either an integer ID or a string N-V-R. Package can be either an integer ID
1044 or a string name. Only one of build and package may be specified. Returns
1045 a list of maps. Each map contains keys:
1046 - id
1047 - name
1048 - perm_id
1049 - perm
1050 - arches
1051 - locked
1052
1053 If package is specified, each map will also contain:
1054 - owner_id
1055 - owner_name
1056 - blocked
1057 - extra_arches
1058
1059listTaskOutput(taskID, stat=False)
1060 description: List the files generated by the task with the given ID. This
1061 will usually include one or more RPMs, and one or more log files.
1062 If the task did not generate any files, or the output directory
1063 for the task no longer exists, return an empty list.
1064
1065 If stat is True, return a map of filename -> stat_info where stat_info
1066 is a map containing the values of the st_* attributes returned by
1067 os.stat().
1068listTasks(opts=None, queryOpts=None)
1069 description: Return list of tasks filtered by options
1070
1071 Options(dictionary):
1072 option[type]: meaning
1073 arch[list]: limit to tasks for given arches
1074 state[list]: limit to tasks of given state
1075 owner[int]: limit to tasks owned by the user with the given ID
1076 host_id[int]: limit to tasks running on the host with the given ID
1077 channel_id[int]: limit to tasks in the specified channel
1078 parent[int]: limit to tasks with the given parent
1079 decode[bool]: whether or not xmlrpc data in the 'request' and 'result'
1080 fields should be decoded; defaults to False
1081 method[str]: limit to tasks of the given method
1082 createdBefore[float or str]: limit to tasks whose create_time is before the
1083 given date, in either float (seconds since the epoch)
1084 or str (ISO) format
1085 createdAfter[float or str]: limit to tasks whose create_time is after the
1086 given date, in either float (seconds since the epoch)
1087 or str (ISO) format
1088 startedBefore[float or str]: limit to tasks whose start_time is before the
1089 given date, in either float (seconds since the epoch)
1090 or str (ISO) format
1091 startedAfter[float or str]: limit to tasks whose start_time is after the
1092 given date, in either float (seconds since the epoch)
1093 or str (ISO) format
1094 completeBefore[float or str]: limit to tasks whose completion_time is before
1095 the given date, in either float (seconds since the epoch)
1096 or str (ISO) format
1097 completeAfter[float or str]: limit to tasks whose completion_time is after
1098 the given date, in either float (seconds since the epoch)
1099 or str (ISO) format
1100
1101listUsers(userType=0, prefix=None, queryOpts=None)
1102 description: List all users in the system.
1103 type can be either koji.USERTYPES['NORMAL']
1104 or koji.USERTYPES['HOST']. Returns a list of maps with the
1105 following keys:
1106
1107 - id
1108 - name
1109 - status
1110 - usertype
1111 - krb_principal
1112
1113 If no users of the specified
1114 type exist, return an empty list.
1115listVolumes()
1116 description: List storage volumes
1117login(*args, **opts)
1118logout()
1119logoutChild(session_id)
1120makeTask(*args, **opts)
1121mavenBuild(url, target, opts=None, priority=None, channel='maven')
1122 description: Create a Maven build task
1123
1124 url: The url to checkout the source from. May be a CVS, SVN, or GIT repository.
1125 target: the build target
1126 priority: the amount to increase (or decrease) the task priority, relative
1127 to the default priority; higher values mean lower priority; only
1128 admins have the right to specify a negative priority here
1129 channel: the channel to allocate the task to (defaults to the "maven" channel)
1130
1131 Returns the task ID
1132
1133mavenEnabled()
1134moveAllBuilds(tag1, tag2, package, force=False)
1135 description: Move all builds of a package from tag1 to tag2 in the correct order
1136
1137 Returns the task id of the task performing the move
1138moveBuild(tag1, tag2, build, force=False)
1139 description: Move a build from tag1 to tag2
1140
1141 Returns the task id of the task performing the move
1142newGroup(name)
1143 description: Add a user group to the database
1144newRepo(tag, event=None, src=False, debuginfo=False)
1145 description: Create a newRepo task. returns task id
1146packageListAdd(taginfo, pkginfo, owner=None, block=None, extra_arches=None, force=False, update=False)
1147 description: Add to (or update) package list for tag
1148packageListBlock(taginfo, pkginfo)
1149 description: Block the package in tag
1150packageListRemove(taginfo, pkginfo, force=False)
1151 description: Remove package from the list for tag
1152
1153 Most of the time you really want to use the block or unblock functions
1154
1155 The main reason to remove an entry like this is to remove an override so
1156 that the package data can be inherited from elsewhere.
1157
1158packageListSetArches(taginfo, pkginfo, arches, force=False)
1159 description: Set extra_arches for package in tag
1160packageListSetOwner(taginfo, pkginfo, owner, force=False)
1161 description: Set the owner for package in tag
1162packageListUnblock(taginfo, pkginfo, force=False)
1163 description: Unblock the package in tag
1164
1165 Generally this just adds a unblocked duplicate of the blocked entry.
1166 However, if the block is actually in tag directly (not through inheritance),
1167 the blocking entry is simply removed
1168queryHistory(tables=None, **kwargs)
1169 description: Returns history data from various tables that support it
1170
1171 tables: list of versioned tables to search, no value implies all tables
1172 valid entries: user_perms, user_groups, tag_inheritance, tag_config,
1173 build_target_config, external_repo_config, tag_external_repos,
1174 tag_listing, tag_packages, group_config, group_req_listing,
1175 group_package_listing
1176
1177 - Time options -
1178 times are specified as an integer event or a string timestamp
1179 time options are valid for all record types
1180 before: either created or revoked before timestamp
1181 after: either created or revoked after timestamp
1182 beforeEvent: either created or revoked before event id
1183 afterEvent: either created or revoked after event id
1184
1185 - other versioning options-
1186 active: select by active status
1187 editor: record created or revoked by user
1188
1189 - table-specific search options -
1190 use of these options will implicitly limit the search to applicable tables
1191 package: only for given package
1192 build: only for given build
1193 tag: only for given tag
1194 user: only affecting a given user
1195 permission: only relating to a given permission
1196 external_repo: only relateing to an external repo
1197 build_target: only relating to a build target
1198 group: only relating to a (comps) group)
1199
1200queryRPMSigs(rpm_id=None, sigkey=None, queryOpts=None)
1201removeChannel(channel_name, force=False)
1202 description: Remove a channel
1203
1204 Channel must have no hosts, unless force is set to True
1205 If a channel has associated tasks, it cannot be removed
1206
1207removeExternalRepoFromTag(tag_info, repo_info)
1208 description: Remove an external repo from a tag
1209removeHostFromChannel(hostname, channel_name)
1210removeVolume(volume)
1211 description: Remove unused storage volume from the database
1212renameChannel(old, new)
1213 description: Rename a channel
1214repoDelete(repo_id)
1215 description: Attempt to mark repo deleted, return number of references
1216
1217 If the number of references is nonzero, no change is made
1218 Does not remove from disk
1219repoExpire(repo_id)
1220 description: mark repo expired
1221repoInfo(repo_id, strict=False)
1222repoProblem(repo_id)
1223 description: mark repo as broken
1224resetBuild(build)
1225 description: Reset a build so that it can be reimported
1226
1227 WARNING: this function is potentially destructive. use with care.
1228 nulls task_id
1229 sets state to CANCELED
1230 clears data in rpminfo
1231 removes rpminfo entries from any buildroot_listings [!]
1232 clears data in archiveinfo, maven_info
1233 removes archiveinfo entries from buildroot_archives
1234 remove files related to the build
1235
1236 note, we don't actually delete the build data, so tags
1237 remain intact
1238
1239restartHosts(priority=5)
1240resubmitTask(taskID)
1241 description: Retry a canceled or failed task, using the same parameter as the original task.
1242 The logged-in user must be the owner of the original task or an admin.
1243revokePermission(userinfo, permission)
1244 description: Revoke a permission from a user
1245search(terms, type, matchType, queryOpts=None)
1246 description: Search for an item in the database matching "terms".
1247 "type" specifies what object type to search for, and must be
1248 one of "package", "build", "tag", "target", "user", "host",
1249 "rpm", "maven", or "win". "matchType" specifies the type of search to
1250 perform, and must be one of "glob" or "regexp". All searches
1251 are case-insensitive. A list of maps containing "id" and
1252 "name" will be returned. If no matches are found, an empty
1253 list will be returned.
1254setBuildOwner(build, user)
1255setBuildTimestamp(build, ts)
1256 description: Set the completion time for a build
1257
1258 build should a valid nvr or build id
1259 ts should be # of seconds since epoch or optionally an
1260 xmlrpc DateTime value
1261setInheritanceData(tag, data, clear=False)
1262setTaskPriority(task_id, priority, recurse=True)
1263 description: Set task priority
1264sharedSession()
1265 description: Drop out of exclusive mode
1266showOpts()
1267showSession()
1268sslLogin(*args, **opts)
1269subsession()
1270system.listMethods()
1271system.methodHelp(method)
1272system.methodSignature(method)
1273tagBuild(tag, build, force=False, fromtag=None)
1274 description: Request that a build be tagged
1275
1276 The force option will attempt to force the action in the event of:
1277 - tag locked
1278 - missing permission
1279 - package not in list for tag
1280 - policy violation
1281 The force option is really only effective for admins
1282
1283 If fromtag is specified, this becomes a move operation.
1284
1285 This call creates a task that was originally intended to perform more
1286 extensive checks, but never has. We're stuck with this task system until
1287 we're ready to break the api.
1288
1289 The return value is the task id
1290
1291tagBuildBypass(tag, build, force=False)
1292 description: Tag a build without running post checks or notifications
1293
1294 This is a short circuit function for imports.
1295 Admin permission required.
1296
1297 Tagging with a locked tag is not allowed unless force is true.
1298 Retagging is not allowed unless force is true. (retagging changes the order
1299 of entries will affect which build is the latest)
1300
1301tagChangedSinceEvent(event, taglist)
1302 description: Report whether any changes since event affect any of the tags in list
1303
1304 The function is used by the repo daemon to determine which of its repos
1305 are up to date.
1306
1307 This function does not figure inheritance, the calling function should
1308 expand the taglist to include any desired inheritance.
1309
1310 Returns: True or False
1311
1312tagHistory(build=None, tag=None, package=None, queryOpts=None)
1313 description: Returns historical tag data
1314
1315 package: only for given package
1316 build: only for given build
1317 tag: only for given tag
1318
1319taskFinished(taskId)
1320taskReport(owner=None)
1321 description: Return data on active or recent tasks
1322untagBuild(tag, build, strict=True, force=False)
1323 description: Untag a build
1324
1325 Unlike tagBuild, this does not create a task
1326 No return value
1327untagBuildBypass(tag, build, strict=True, force=False)
1328 description: Untag a build without any checks or notifications
1329
1330 Admins only. Intended for syncs/imports.
1331
1332 Unlike tagBuild, this does not create a task
1333 No return value
1334untaggedBuilds(name=None, queryOpts=None)
1335 description: Returns the list of untagged builds
1336updateNotification(id, package_id, tag_id, success_only)
1337 description: Update an existing build notification with new data. If the notification
1338 with the given ID doesn't exist, or the currently logged-in user is not the
1339 owner or the notification or an admin, raise a GenericError.
1340uploadFile(path, name, size, md5sum, offset, data)
1341winBuild(vm, url, target, opts=None, priority=None, channel='vm')
1342 description:
1343 Create a Windows build task
1344
1345 vm: the name of the VM to run the build in
1346 url: The url to checkout the source from. May be a CVS, SVN, or GIT repository.
1347 opts: task options
1348 target: the build target
1349 priority: the amount to increase (or decrease) the task priority, relative
1350 to the default priority; higher values mean lower priority; only
1351 admins have the right to specify a negative priority here
1352 channel: the channel to allocate the task to (defaults to the "vm" channel)
1353
1354 Returns the task ID
1355
1356winEnabled()
1357wrapperRPM(build, url, target, priority=None, channel='maven', opts=None)
1358 description: Create a top-level wrapperRPM task
1359
1360 build: The build to generate wrapper rpms for. Must be in the COMPLETE state and have no
1361 rpms already associated with it.
1362 url: SCM URL to a specfile fragment
1363 target: The build target to use when building the wrapper rpm. The build_tag of the target will
1364 be used to populate the buildroot in which the rpms are built.
1365 priority: the amount to increase (or decrease) the task priority, relative
1366 to the default priority; higher values mean lower priority; only
1367 admins have the right to specify a negative priority here
1368 channel: the channel to allocate the task to (defaults to the "maven" channel)
1369
1370 returns the task ID
1371
1372writeSignedRPM(an_rpm, sigkey, force=False)
1373 description: Write a signed copy of the rpm