(→Localcheckbuild) |
|||
| Line 5: | Line 5: | ||
* Check packages in repos of Trunk:Testing, Trunk:Netbook, Trunk:Handset, Trunk:IVI to get the package list which depends on the one you want to check(reuse “osc resolvedeps” plugin); | * Check packages in repos of Trunk:Testing, Trunk:Netbook, Trunk:Handset, Trunk:IVI to get the package list which depends on the one you want to check(reuse “osc resolvedeps” plugin); | ||
* Download new RPMs of your updated package and check out the sources of packages in dependant list; | * Download new RPMs of your updated package and check out the sources of packages in dependant list; | ||
| - | * | + | * Run“osc build –prefer-pkgs=xxx” to build the package and check the result in the list one by one. |
| + | **--prefer-pkgs option ensures it uses the new updated RPMs when installing the build-root; | ||
| + | **The repos the tool pulls from is OBS download repository like http://download.meego.com/live/Trunk:/Testing/standard/, http://download.meego.com/live/Trunk:/Netbook/Testing/ .... , user can’t specify the repos currently. | ||
| + | **Trunk:Netbook, Trunk:Handset, Trunk:IVI build against both Trunk/Trunk:Testing on OBS. In this tool, we only check the build against Trunk:Testing by default since it includes the latest packages. | ||
| + | |||
== Installation == | == Installation == | ||
* Ensure the osc local build tool works in the silent mode, please add below lines to your /etc/sudoers: | * Ensure the osc local build tool works in the silent mode, please add below lines to your /etc/sudoers: | ||
| Line 57: | Line 61: | ||
Trunk:Handset/meegotouchcp-connman : Build failed. | Trunk:Handset/meegotouchcp-connman : Build failed. | ||
*Please check logfile in /var/tmp/buildcheck-qt-i586/LOG for more details. | *Please check logfile in /var/tmp/buildcheck-qt-i586/LOG for more details. | ||
| - | Be noted that it may take a few hours to implement the build work which depends on the length of the dependant package list and the network speed. | + | Be noted that it may take a few hours to implement the build work which depends on the length of the dependant package list and the network speed.<BR> |
| - | + | ||
| - | You can also exclude some packages and specify some packages to check | + | You can also exclude some packages and specify some packages to check: |
# Only build meegotouchcp-connman vym packages | # Only build meegotouchcp-connman vym packages | ||
osc localcheckbuild devel:qt-mtf qt testing i586 --buildpkgs="meegotouchcp-connman vym" | osc localcheckbuild devel:qt-mtf qt testing i586 --buildpkgs="meegotouchcp-connman vym" | ||
Contents |
localcheckbuild tool is one osc plugin which is used to list the dependant package list and local-build them with the new update packages to ensure the update works fine.All the build work will implement in your local machine, it doesn’t create any linking/copying on Server side.
The workflow of this plugin is:
Defaults env_keep += "http_proxy no_proxy HTTP_PROXY NO_PROXY" $YOUR_USERNAME ALL=(ALL) NOPASSWD: /usr/bin/build
osc localcheckbuild [-r] [-y] [--repourl=TEXT] [--excludepkgs=TEXT] [--buildpkgs=TEXT] PRJECTNAME PACKAGENAME REPOSITORY ARCH
The arguments REPOSITORY and ARCH are the first two columns in the 'osc repos' output.
Examples:
osc localcheckbuild devel:qt-mtf qt testing i586
Options:
-h, --help show this help message and exit
--repourl=TEXT Repository of the new package, default is the OBS download repository
--buildpkgs=TEXT The package list that will be built, the tool will skip checking dependencies and build the packages in
this list directly, example: --buildpkgs="at-spi gtk2"
--excludepkgs=TEXT
The package list that will not be built, example: --excludepkgs="bash gcc"
-c, --continuebuild
Continue the build check, it will skip the packages that have been built
-y, --yes Answer yes for all questions
-r, --recursive Check recursively if all the packages which depends on me can be built successfully
#osc localcheckbuild devel:qt-mtf qt testing i586
......
There are 79 packages in the dependant list.
Packages in the to-be-built list : 43
* Trunk:Netbook : 4
garage-netbook-ui marble stellarium vym
* Trunk:Handset : 20
libofono-qt libseaside meego-handset-calendar meego-handset-chat meego-handset-dialer meego-handset-email meego-handset-mannequin meego-handset-music meego-handset-people meego-handset-photos meego-handset-sms meego-handset-socialweb meego-handset-statusindicators meego-handset-video meegotouch-inputmethodbridges meegotouchcp-bluetooth meegotouchcp-chat meegotouchcp-connman meegotouchcp-socialweb meegotouchcp-telephony
* Trunk:Testing : 17
PackageKit buteo-mtp buteo-sync-plugins buteo-syncfw buteo-syncml clutter-qt cmake-gui garage-client-services libiodata meego-lsb min phonesim poppler sensorfw syncevolution timed libqmlog
* Trunk:IVI : 2
ividesktop ivihome
Packages in the skip list : 36
* 36 packages have been in the project devel:qt-mtf, please check the build result on OBS directly.
automoc4 contactsd contextkit contextkit-maemo libaccounts-qt libcontentaction qt-mobility libmeegochat libmeegotouch qmf phonon libqttracker qtwebkit libsignon libsocialweb-qt marmazon meegotouch-applauncherd meegotouch-applifed meegotouch-compositor meegotouch-controlpanel meegotouch-feedback meegotouch-feedbackreactionmaps meegotouch-home meegotouch-inputmethodengine meegotouch-inputmethodframework meegotouch-inputmethodkeyboard meegotouch-systemui qca2 qjson qt-creator qt-obex-ftp-library qt-web-runtime qtcontacts-tracker telepathy-qt4 kcalcore mkcal
Total: 79, To be built: 43, Skip: 36.
......
Log file: /var/tmp/buildcheck-qt-i586/buildcheck-qt.log.
Total: 43, success: 41, fail: 2
Failure list:
Trunk:Netbook/vym : Build failed.
Trunk:Handset/meegotouchcp-connman : Build failed.
*Please check logfile in /var/tmp/buildcheck-qt-i586/LOG for more details.
Be noted that it may take a few hours to implement the build work which depends on the length of the dependant package list and the network speed.
You can also exclude some packages and specify some packages to check:
# Only build meegotouchcp-connman vym packages osc localcheckbuild devel:qt-mtf qt testing i586 --buildpkgs="meegotouchcp-connman vym" # Do not build buteo-mtp buteo-sync-plugins buteo-syncfw packages osc localcheckbuild devel:qt-mtf qt testing i586 --excludepkgs="buteo-mtp buteo-sync-plugins buteo-syncfw"