Size: 2997
Comment:
|
Size: 3802
Comment: update to current code
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
~- [[FrontPage|Launchpad Help]] > [[Packaging]] > Prioristing builds -~ | ~- [[FrontPage|Launchpad Help]] > [[Packaging]] > Prioritising builds -~ |
Line 6: | Line 6: |
When you upload a source package to Launchpad, it assigns the package a priority and then uses the priority to decide when the package should be sent to Launchpad's [[https://launchpad.net/builders|build-farm]]. | When you upload a source package to Launchpad, it assigns the package a priority -- a "score" -- and then uses that score to decide when the package should be sent to Launchpad's [[https://launchpad.net/builders|build-farm]]. |
Line 8: | Line 9: |
Launchpad calculates the priority of the build based on its attributes. We call this the build's "score". The higher the score, the sooner the build is dispatched to one of the available build machines. | Launchpad calculates the score based on various attributes (described below). The higher the score, the sooner the build is dispatched to one of the available build machines. |
Line 16: | Line 17: |
* target pocket -- e.g. security * target component -- e.g. universe |
* target [[Glossary#pocket|pocket]] -- e.g. security * target [[Glossary#component|component]] -- e.g. universe |
Line 19: | Line 20: |
* time since upload to the queue * whether the package is destined for a public or private PPA. |
* package sets containing the package * archive containing the package * time the package has spent in the build queue |
Line 22: | Line 24: |
The build score is the sum of all the scores that Launchpad awards the build for each of these criteria. | Launchpad adds up the scores from each category to decide the build's priority. |
Line 26: | Line 28: |
Launchpad gives a higher score to builds depending on the importance of their target pocket. |
|
Line 29: | Line 29: |
|| -proposed || 0 || || -backports || 1500 || || <release> || 3000 || || -updates || 4500 || || -security || 6000 || |
|| -backports || 0 || || <release> || 1500 || || -proposed || 3000 || || -updates || 3000 || || -security || 4500 || |
Line 37: | Line 37: |
Launchpad gives a higher score to builds depending on the importance of their target component. |
|
Line 59: | Line 57: |
=== Time in queue === | === Package sets === |
Line 61: | Line 59: |
Rather than allow low priority packages to linger in the queue for too long, Launchpad increases a build's priority according to its age. | Package sets are used in distributions to apply properties such as upload permissions to groups of packages. A package set may have a "relative build score" bonus assigned to it in the Launchpad database. Currently, package sets in the Ubuntu distribution that are used to build images receive bonuses as follows: |
Line 63: | Line 61: |
|| '''Age [in seconds]''' || '''Score''' || || 300 || 5 || || 900 || 10 || || 1800 || 15 || || 3600 || 20 || || 7200 || 50 || || 14400 || 100 || |
|| '''Package set''' || '''Score''' || || core || 50 || || desktop-core || 50 || || edubuntu || 50 || || kubuntu || 50 || || lubuntu || 50 || || mythbuntu || 50 || || ubuntu-desktop || 50 || || ubuntu-server || 50 || || ubuntustudio || 50 || || xubuntu || 50 || |
Line 72: | Line 74: |
=== Archive privacy === | === Archives === |
Line 80: | Line 82: |
Builds destined for copy archives (used for test rebuilds of the Ubuntu primary archive) are given a lower priority. || '''Copy archive?''' || '''Score''' || || yes || -2600 || || no || 0 || Archives may also have a "relative build score" bonus assigned to them in the Launchpad database. === Build queue time === Build scores increase the longer a package has spent in the queue. || '''Queue time''' || '''Score''' || || less than 5 minutes || 0 || || 5 to 15 minutes || 5 || || 15 to 30 minutes || 10 || || 30 to 60 minutes || 15 || || 60 to 120 minutes || 20 || || 120 to 240 minutes || 50 || || more than 240 minutes || 100 || |
|
Line 83: | Line 107: |
Builds targeted to copy archive get a fixed score of 4, so even the least prioritized build will be dispatched before anything from COPY archives. | In some circumstances, Launchpad assigns a fixed, low score to builds, meaning they will be processed only when there isn't anything else in the queue: |
Line 85: | Line 109: |
Builds for sources targeted to the 'transalation' section get a fixed score of 0, meaning they will be processed only when there isn't anything else in the queue. | * '''translation:''' builds for sources targeted to the ''translations'' section get a fixed score of 0. |
Launchpad Help > Packaging > Prioritising builds
Prioritising builds
When you upload a source package to Launchpad, it assigns the package a priority -- a "score" -- and then uses that score to decide when the package should be sent to Launchpad's build-farm.
Launchpad calculates the score based on various attributes (described below). The higher the score, the sooner the build is dispatched to one of the available build machines.
There are separate build queues for distributions and PPAs.
How Launchpad calculates the score
Launchpad uses the following attributes of a package to calculate its priority:
target pocket -- e.g. security
target component -- e.g. universe
- source urgency -- defined by the packager
- package sets containing the package
- archive containing the package
- time the package has spent in the build queue
Launchpad adds up the scores from each category to decide the build's priority.
Target pocket
Score |
|
-backports |
0 |
<release> |
1500 |
-proposed |
3000 |
-updates |
3000 |
-security |
4500 |
Target component
Component |
Score |
multiverse |
0 |
universe |
250 |
restricted |
750 |
main |
1000 |
partner |
1250 |
Source urgency
A packager can specify the urgency of their source package. Launchpad takes this into account.
Urgency |
Score |
low |
5 |
medium |
10 |
high |
15 |
emergency |
20 |
Package sets
Package sets are used in distributions to apply properties such as upload permissions to groups of packages. A package set may have a "relative build score" bonus assigned to it in the Launchpad database. Currently, package sets in the Ubuntu distribution that are used to build images receive bonuses as follows:
Package set |
Score |
core |
50 |
desktop-core |
50 |
edubuntu |
50 |
kubuntu |
50 |
lubuntu |
50 |
mythbuntu |
50 |
ubuntu-desktop |
50 |
ubuntu-server |
50 |
ubuntustudio |
50 |
xubuntu |
50 |
Archives
Builds destined for private PPAs are given a higher priority.
Privacy status |
Score |
public |
0 |
private |
10000 |
Builds destined for copy archives (used for test rebuilds of the Ubuntu primary archive) are given a lower priority.
Copy archive? |
Score |
yes |
-2600 |
no |
0 |
Archives may also have a "relative build score" bonus assigned to them in the Launchpad database.
Build queue time
Build scores increase the longer a package has spent in the queue.
Queue time |
Score |
less than 5 minutes |
0 |
5 to 15 minutes |
5 |
15 to 30 minutes |
10 |
30 to 60 minutes |
15 |
60 to 120 minutes |
20 |
120 to 240 minutes |
50 |
more than 240 minutes |
100 |
Other
In some circumstances, Launchpad assigns a fixed, low score to builds, meaning they will be processed only when there isn't anything else in the queue:
translation: builds for sources targeted to the translations section get a fixed score of 0.