| 51 | |
| 52 | == Commit Message Keywords == |
| 53 | |
| 54 | SVN commit messages, should: |
| 55 | * contain a brief summary of the purpose of the commit |
| 56 | * reference related things such as tickets OR documents (see below for how to link to these things) |
| 57 | |
| 58 | In addition, certain keywords in commit messages are used to control the actions of |
| 59 | the the bitten-Trac master and the slave auto-builders. |
| 60 | |
| 61 | === Inhibiting auto builds for minor commits === |
| 62 | |
| 63 | When composing your commit messages please consider |
| 64 | if your change of itself warrants re-builds and tests |
| 65 | being performed 9 times (dbg+opt) at locations across the globe. |
| 66 | |
| 67 | If it does not then using any of the following words in |
| 68 | your commit message will inhibit builds being queued for that commit. |
| 69 | |
| 70 | * minor |
| 71 | * minimal |
| 72 | * trivial |
| 73 | |
| 74 | Currently capitalized versions such as '''M'''inor do not have any effect |
| 75 | NB this only applies to commits within the NuWa trunks, commits |
| 76 | elsewhere : "people", "groups" , ... do not trigger builds. |
| 77 | |
| 78 | Also if you plan to make a sequence of commits do not delay |
| 79 | longer that the repository cooldown time (currently 30min) between |
| 80 | making them otherwise 2 builds would be queued. |
| 81 | |
| 82 | If you do need such a delay, to take a nice long lunchbreak for example, |
| 83 | then make you pre-lunch commits "minor" ones. |
| 84 | |
| 85 | |
| 86 | === Controlling package re-referencing and cleaning === |
| 87 | |
| 88 | Similarly the strings '''reref:pkgspec''' '''clean:pkgspec''' can be used in commits messages |
| 89 | to trigger re-referencing and cleaning of packages. |
| 90 | |
| 91 | Usage examples: |
| 92 | * reref:rootiotests |
| 93 | * reref:rootiotests,mdc10b |
| 94 | * reref:suspects |
| 95 | * clean:dybtest |
| 96 | * clean:rootiotests,mdc10b |
| 97 | |
| 98 | The package specification argument can be comma delimited, is case insensitive and can use both package names and aliases for sets of packages (eg '''suspects''') |
| 99 | defined in source:installation/trunk/dybinst/scripts/dybinst-common.sh |
| 100 | |
| 101 | Each auto build looks for keywords in its own commit message and prior commit messages up to 60 minutes prior to the commit. |
| 102 | Thus for the keywords to be effective in triggering an action requires a build triggering commit to occur within 60mins. |
| 103 | |