Part of lp.soyuz.interfaces.packagecopyjob View In Hierarchy
IPackageCopyJobs.| Method | create | Create a new IPlainPackageCopyJob. |
| Method | createMultiple | Create multiple new `IPlainPackageCopyJob`s at once. |
| Method | getActiveJobs | Retrieve all active sync jobs for an archive. |
| Method | getPendingJobsPerPackage | Find pending jobs for each package in target_series. |
| Method | getIncompleteJobsForArchive | Find incomplete jobs for each package in archive. |
Inherited from IJobSource:
| Int | memory_limit | Undocumented |
| Method | iterReady | Iterate through all jobs. |
| Method | contextManager | Get a context for running this kind of job in. |
IPlainPackageCopyJob.| Parameters | package_name | The name of the source package to copy. |
| source_archive | The IArchive in which source_packages are
found. | |
| target_archive | The IArchive to which to copy the packages. | |
| target_distroseries | The IDistroSeries to which to copy the
packages. | |
| target_pocket | The pocket into which to copy the packages. Must
be a member of PackagePublishingPocket. | |
| include_binaries | See do_copy. | |
| package_version | The version string for the package version that is to be copied. | |
| copy_policy | Applicable PackageCopyPolicy. | |
| requester | The user requesting the copy. | |
| sponsored | The user who is being sponsored to make the copy. The person who is making this request then becomes the sponsor. | |
| unembargo | See do_copy. | |
| auto_approve | if True and the user requesting the sync has queue admin permissions on the target, accept the copy immediately rather than setting it to unapproved. | |
| silent | Suppress any emails that the copy would generate. Only usable with queue admin permissions on the target. | |
| source_distroseries | The IDistroSeries from which to copy
the packages. If omitted, copy from any series with a matching
version. | |
| source_pocket | The pocket from which to copy the packages.
Must be a member of PackagePublishingPocket. If omitted, copy
from any pocket with a matching version. | |
| phased_update_percentage | The phased update percentage to apply to the copied publication. |
Create multiple new `IPlainPackageCopyJob`s at once.
:param target_distroseries: The `IDistroSeries` to which to copy the
packages.
:param copy_tasks: A list of tuples describing the copies to be
performed: (package name, package version, source archive,
target archive, target pocket).
:param requester: The user requesting the copy.
:param copy_policy: Applicable `PackageCopyPolicy`.
:param include_binaries: As in `do_copy`.
:param unembargo: As in `do_copy`.
:param auto_approve: if True and the user requesting the sync has
queue admin permissions on the target, accept the copy
immediately rather than setting it to unapproved.
:param silent: Suppress any emails that the copy would generate.
Only usable with queue admin permissions on the target.
:return: An iterable of `PackageCopyJob` ids.
Find pending jobs for each package in `target_series`.
This is meant for finding jobs that will resolve specific
`DistroSeriesDifference`s.
:param target_series: Target `DistroSeries`; this corresponds to
`DistroSeriesDifference.derived_series`.
:return: A dict containing as keys the (name, version) tuples for
each `DistroSeriesDifference` that has a resolving
`PlainPackageCopyJob` pending. Each of these DSDs maps to its
oldest pending job. The `version` corresponds to
`DistroSeriesDifference.parent_source_version`.
archive.
Incomplete jobs are ones in status WAITING, RUNNING or FAILED.
| Parameters | archive | The target IArchive for the job. |
| Returns | An iterable of PackageCopyJob. | |