Message ID | 20200915103806.13785-1-jugurtha.belkalem@smile.fr |
---|---|
State | Changes Requested |
Headers | show |
Series | [PATH,v2,1/1] docs/manual: add qemu defconfigs gitlab test | expand |
On Tue, 15 Sep 2020 12:38:06 +0200 Jugurtha BELKALEM <jugurtha.belkalem@smile.fr> wrote: > +=== Adding qemu defconfig gitlab test > + > +Buildroot provides a test script (support/scripts/boot-qemu-image.py) > +to validate all defconfigs under +board/qemu/. Every supported qemu > +architecture should append the comment : # qemu_ARCH_defconfig > +at the end of its command line entry in board/qemu/ARCH/readme.txt (for > +example aarch64-virt includes : # qemu_aarch64_virt_defconfig). > +Once a week, every defconfig is tested under gitlab's pipelines : > +* Launches a qemu instance. > +* Enters root credentials and checks if login shell is available. > +* Powers off the instance. > +The job fails if one of above steps returns unsuccessful status code. > +to trigger qemu defconfigs test jobs: > + > +--------------------- > + $ git push gitlab HEAD:<name>_defconfig > +--------------------- While I understand the idea of documenting this, I am wondering if the Buildroot manual is really the right place for this. Indeed, this bit of documentation is really only useful for the very specific/narrow use case of qemu defconfigs. Should this be in board/qemu/readme.txt ? I'm not sure. Thomas
Hello Thomas, Le 15/09/2020 à 16:51, Thomas Petazzoni a écrit : > On Tue, 15 Sep 2020 12:38:06 +0200 > Jugurtha BELKALEM <jugurtha.belkalem@smile.fr> wrote: > >> +=== Adding qemu defconfig gitlab test >> + >> +Buildroot provides a test script (support/scripts/boot-qemu-image.py) >> +to validate all defconfigs under +board/qemu/. Every supported qemu >> +architecture should append the comment : # qemu_ARCH_defconfig >> +at the end of its command line entry in board/qemu/ARCH/readme.txt (for >> +example aarch64-virt includes : # qemu_aarch64_virt_defconfig). >> +Once a week, every defconfig is tested under gitlab's pipelines : >> +* Launches a qemu instance. >> +* Enters root credentials and checks if login shell is available. >> +* Powers off the instance. >> +The job fails if one of above steps returns unsuccessful status code. >> +to trigger qemu defconfigs test jobs: >> + >> +--------------------- >> + $ git push gitlab HEAD:<name>_defconfig >> +--------------------- > > While I understand the idea of documenting this, I am wondering if the > Buildroot manual is really the right place for this. Indeed, this bit > of documentation is really only useful for the very specific/narrow use > case of qemu defconfigs. > > Should this be in board/qemu/readme.txt ? I'm not sure. Maybe the manual needs a new chapter about the gitlab-ci in general and document all pipeline trigger supported. For a new qemu defconfigs, we need to take care of: - define "# qemu_ARCH_defconfig" tag in the file board/qemu/ARCH/readme.txt - Use board/qemu/post-image.sh post image script and provide the name of the defconfig as argument of this script: BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" - Enable host-qemu to use qemu built by Buildroot for the host: BR2_PACKAGE_HOST_QEMU=y BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE=y Being in the manual would promote gitlab-ci testing with Qemu. Best regards, Romain > > Thomas >
Hello Romain, On Sat, 8 Jan 2022 11:56:54 +0100 Romain Naour <romain.naour@smile.fr> wrote: > Maybe the manual needs a new chapter about the gitlab-ci in general and document > all pipeline trigger supported. > > For a new qemu defconfigs, we need to take care of: > > - define "# qemu_ARCH_defconfig" tag in the file board/qemu/ARCH/readme.txt > > - Use board/qemu/post-image.sh post image script and provide the name of the > defconfig as argument of this script: > BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" > BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" > > - Enable host-qemu to use qemu built by Buildroot for the host: > BR2_PACKAGE_HOST_QEMU=y > BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE=y > > Being in the manual would promote gitlab-ci testing with Qemu. Yes, I agree! We need a single place in the chapter with all the Gitlab CI details. Like the test-pkg integration, testing of defconfigs, testing of runtime tests, etc. I'll mark this patch as Changes Requested, because we don't want just a section/chapter specifically for the qemu defconfig testing in Gitlab CI, but a broader section; Please note that Gitlab CI testing of runtime tests is already documented in the manual, so it will have to be refactored. Best regards, Thomas
diff --git a/docs/manual/adding-board-support.txt b/docs/manual/adding-board-support.txt index 33ed709535..6c7eb93ce2 100644 --- a/docs/manual/adding-board-support.txt +++ b/docs/manual/adding-board-support.txt @@ -46,3 +46,21 @@ create a directory +board/<manufacturer>+ and a subdirectory +board/<manufacturer>/<boardname>+. You can then store your patches and configurations in these directories, and reference them from the main Buildroot configuration. Refer to xref:customize[] for more details. + +=== Adding qemu defconfig gitlab test + +Buildroot provides a test script (support/scripts/boot-qemu-image.py) +to validate all defconfigs under +board/qemu/. Every supported qemu +architecture should append the comment : # qemu_ARCH_defconfig +at the end of its command line entry in board/qemu/ARCH/readme.txt (for +example aarch64-virt includes : # qemu_aarch64_virt_defconfig). +Once a week, every defconfig is tested under gitlab's pipelines : +* Launches a qemu instance. +* Enters root credentials and checks if login shell is available. +* Powers off the instance. +The job fails if one of above steps returns unsuccessful status code. +to trigger qemu defconfigs test jobs: + +--------------------- + $ git push gitlab HEAD:<name>_defconfig +---------------------
Buildroot supports testing qemu defconfigs on gitlab since [1]. [1] : commit 0c7935063851accf3db4c9eb2fc4f11c3da0c391. Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr> --- Changes v1 -> v2: - remove drive=hd0 from doc. docs/manual/adding-board-support.txt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)