tuxlava 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. tuxlava-0.1.0/.gitignore +11 -0
  2. tuxlava-0.1.0/.gitlab-ci.yml +187 -0
  3. tuxlava-0.1.0/Dockerfile +14 -0
  4. tuxlava-0.1.0/Dockerfile.ci-debian +30 -0
  5. tuxlava-0.1.0/Dockerfile.ci-fedora +12 -0
  6. tuxlava-0.1.0/LICENSE +19 -0
  7. tuxlava-0.1.0/Makefile +40 -0
  8. tuxlava-0.1.0/PKG-INFO +109 -0
  9. tuxlava-0.1.0/README.md +94 -0
  10. tuxlava-0.1.0/codespell-ignore-list +1 -0
  11. tuxlava-0.1.0/debian/changelog +5 -0
  12. tuxlava-0.1.0/debian/control +28 -0
  13. tuxlava-0.1.0/debian/gbp.conf +5 -0
  14. tuxlava-0.1.0/debian/rules +21 -0
  15. tuxlava-0.1.0/debian/source/format +1 -0
  16. tuxlava-0.1.0/docs/contributing.md +102 -0
  17. tuxlava-0.1.0/docs/devices.md +90 -0
  18. tuxlava-0.1.0/docs/index.md +93 -0
  19. tuxlava-0.1.0/docs/install-deb.md +28 -0
  20. tuxlava-0.1.0/docs/install-pypi.md +19 -0
  21. tuxlava-0.1.0/docs/install-rpm.md +26 -0
  22. tuxlava-0.1.0/docs/style.css +6 -0
  23. tuxlava-0.1.0/docs/tests.md +237 -0
  24. tuxlava-0.1.0/docs/tuxlava.svg +51 -0
  25. tuxlava-0.1.0/docs/tuxlava_full.svg +61 -0
  26. tuxlava-0.1.0/docs/tuxlava_icon.svg +73 -0
  27. tuxlava-0.1.0/mkdocs.yml +40 -0
  28. tuxlava-0.1.0/pyproject.toml +20 -0
  29. tuxlava-0.1.0/requirements-dev.txt +11 -0
  30. tuxlava-0.1.0/scripts/readme2index.sh +13 -0
  31. tuxlava-0.1.0/support/docker/Dockerfile.ci +11 -0
  32. tuxlava-0.1.0/support/docker/tuxlava-ci-images.yml +112 -0
  33. tuxlava-0.1.0/test/conftest.py +22 -0
  34. tuxlava-0.1.0/test/unit/refs/definitions/avh-imx93-boot-args.yaml +55 -0
  35. tuxlava-0.1.0/test/unit/refs/definitions/avh-imx93-ltp-smoke.yaml +77 -0
  36. tuxlava-0.1.0/test/unit/refs/definitions/avh-imx93-module-overlay.yaml +53 -0
  37. tuxlava-0.1.0/test/unit/refs/definitions/avh-imx93-multiple-tests.yaml +94 -0
  38. tuxlava-0.1.0/test/unit/refs/definitions/avh-imx93.yaml +47 -0
  39. tuxlava-0.1.0/test/unit/refs/definitions/avh-rpi4b.yaml +47 -0
  40. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-aosp-dragonboard-845c-boot-test.yaml +167 -0
  41. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-aosp-dragonboard-845c-cts.yaml +185 -0
  42. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-aosp-dragonboard-845c-vts-kernel-v7a.yaml +186 -0
  43. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-aosp-dragonboard-845c-vts-kernel-v8a.yaml +185 -0
  44. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-aosp-dragonboard-845c-vts.yaml +185 -0
  45. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-aosp-qrb5165-rb5-boot-test.yaml +167 -0
  46. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-arb5165-rb5-cts.yaml +185 -0
  47. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-arb5165-rb5-vts-kernel-v7a.yaml +185 -0
  48. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-arb5165-rb5-vts-kernel-v8a.yaml +186 -0
  49. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-arb5165-rb5-vts.yaml +185 -0
  50. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-dragonboard-410c-module-path.yaml +85 -0
  51. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-dragonboard-410c-multiple-tests.yaml +190 -0
  52. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-dragonboard-845c-module-path-multiple-tags.yaml +99 -0
  53. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-dragonboard-845c-module-path-no-tags.yaml +95 -0
  54. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-dragonboard-845c-module-path.yaml +97 -0
  55. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-dragonboard-845c-multiple-tests.yaml +196 -0
  56. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-e850-96-module-path.yaml +85 -0
  57. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-e850-96-multiple-tests.yaml +190 -0
  58. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-qrb5165-rb5.yaml +96 -0
  59. tuxlava-0.1.0/test/unit/refs/definitions/fastboot-x15-module-path.yaml +106 -0
  60. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva-defaults.yaml +188 -0
  61. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva-kernel-xz.yaml +189 -0
  62. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva-ltp-smoke.yaml +211 -0
  63. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva-modules-path-usr.yaml +194 -0
  64. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva-modules-tar-gz.yaml +194 -0
  65. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva-modules.yaml +194 -0
  66. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva-prompt.yaml +189 -0
  67. tuxlava-0.1.0/test/unit/refs/definitions/fvp-aemva.yaml +188 -0
  68. tuxlava-0.1.0/test/unit/refs/definitions/fvp-lava-job-definition.yaml +105 -0
  69. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-binder.yaml +95 -0
  70. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-bionic-params.yaml +99 -0
  71. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-bionic.yaml +99 -0
  72. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-boringssl-timeouts.yaml +97 -0
  73. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-boringssl.yaml +97 -0
  74. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-compartment.yaml +97 -0
  75. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-device-tree.yaml +95 -0
  76. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-dvfs.yaml +95 -0
  77. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-libjpeg-turbo.yaml +98 -0
  78. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-libpdfium.yaml +98 -0
  79. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-libpng.yaml +98 -0
  80. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-lldb.yaml +98 -0
  81. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-logd.yaml +97 -0
  82. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-multicore.yaml +95 -0
  83. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-smc91x.yaml +94 -0
  84. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-virtio_net.yaml +95 -0
  85. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android-zlib.yaml +97 -0
  86. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-android.yaml +84 -0
  87. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-busybox-purecap.yaml +107 -0
  88. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-busybox-smc91x.yaml +94 -0
  89. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-busybox.yaml +84 -0
  90. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-debian-purecap.yaml +115 -0
  91. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-grub-boot-busybox-acpi.yaml +95 -0
  92. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-grub-boot-busybox-dt.yaml +95 -0
  93. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-grub-boot-debian-acpi.yaml +96 -0
  94. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-grub-boot-debian-dt.yaml +97 -0
  95. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-oe.yaml +84 -0
  96. tuxlava-0.1.0/test/unit/refs/definitions/fvp-morello-ubuntu.yaml +89 -0
  97. tuxlava-0.1.0/test/unit/refs/definitions/network-basic-tests.yaml +89 -0
  98. tuxlava-0.1.0/test/unit/refs/definitions/nfs-bcm2711-rpi-4-b-module-path.yaml +61 -0
  99. tuxlava-0.1.0/test/unit/refs/definitions/nfs-bcm2711-rpi-4-b-multiple-tests.yaml +165 -0
  100. tuxlava-0.1.0/test/unit/refs/definitions/nfs-i386-module-path.yaml +81 -0
  101. tuxlava-0.1.0/test/unit/refs/definitions/nfs-i386-multiple-tests.yaml +185 -0
  102. tuxlava-0.1.0/test/unit/refs/definitions/nfs-juno-r2-module-path.yaml +81 -0
  103. tuxlava-0.1.0/test/unit/refs/definitions/nfs-juno-r2-multiple-tests.yaml +185 -0
  104. tuxlava-0.1.0/test/unit/refs/definitions/nfs-rk3399-rock-pi-4b-module-path.yaml +60 -0
  105. tuxlava-0.1.0/test/unit/refs/definitions/nfs-x86-64-module-path.yaml +81 -0
  106. tuxlava-0.1.0/test/unit/refs/definitions/nfs-x86-64-multiple-tests.yaml +185 -0
  107. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-hacking-session.yaml +83 -0
  108. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-kselftest-arm64.yaml +66 -0
  109. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-ltp-fcntl-locktests.yaml +70 -0
  110. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-ltp-syscalls-kirk.yaml +76 -0
  111. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-db-sqlite-insert-small.yaml +78 -0
  112. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-hpc-scimarkc-small.yaml +78 -0
  113. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-io-blogbench.yaml +78 -0
  114. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-io-fio-randread-async-randwrite.yaml +78 -0
  115. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-io-fio-randread-async-seqwrite.yaml +78 -0
  116. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-io-fio-randread-sync-heavywrite.yaml +78 -0
  117. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-io-fio-randread-sync-randwrite.yaml +78 -0
  118. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-io-fsmark-small-file-stream.yaml +78 -0
  119. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-memdb-redis-benchmark-small.yaml +78 -0
  120. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-memdb-redis-memtier-small.yaml +78 -0
  121. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-scheduler-schbench.yaml +78 -0
  122. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-scheduler-sysbench-cpu.yaml +78 -0
  123. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-scheduler-sysbench-thread.yaml +78 -0
  124. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-aim9-disk.yaml +78 -0
  125. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-coremark.yaml +78 -0
  126. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-cyclictest-fine-hackbench.yaml +78 -0
  127. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-cyclictest-hackbench.yaml +78 -0
  128. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-ebizzy.yaml +78 -0
  129. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-pmqtest-hackbench.yaml +78 -0
  130. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-af-alg.yaml +78 -0
  131. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-bad-altstack.yaml +78 -0
  132. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-class-io-parallel.yaml +78 -0
  133. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-context.yaml +78 -0
  134. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-fork.yaml +78 -0
  135. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-get-iterations-2.yaml +78 -0
  136. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-get-iterations-4-mmtests_path.yaml +78 -0
  137. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-get.yaml +78 -0
  138. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-getdent.yaml +78 -0
  139. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-madvise.yaml +78 -0
  140. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-mmap.yaml +78 -0
  141. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-vm-splice.yaml +78 -0
  142. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-stressng-zombie.yaml +78 -0
  143. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-usemem.yaml +78 -0
  144. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-will-it-scale-io-processes.yaml +78 -0
  145. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-will-it-scale-io-threads.yaml +78 -0
  146. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-will-it-scale-pf-processes.yaml +78 -0
  147. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-will-it-scale-pf-threads.yaml +78 -0
  148. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-will-it-scale-sys-processes.yaml +78 -0
  149. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-mmtests-workload-will-it-scale-sys-threads.yaml +78 -0
  150. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-module-path.yaml +54 -0
  151. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-modules.yaml +72 -0
  152. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-overlay-script.yaml +87 -0
  153. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-pheripherals.yaml +59 -0
  154. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-systemd-analyze.yaml +65 -0
  155. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-timeouts.yaml +46 -0
  156. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64-xfstests-ext4.yaml +79 -0
  157. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64.yaml +46 -0
  158. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64be-qemu-image.yaml +48 -0
  159. tuxlava-0.1.0/test/unit/refs/definitions/qemu-arm64be.yaml +46 -0
  160. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv5-ltp-fs_bind.yaml +73 -0
  161. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv5.yaml +49 -0
  162. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7-kernel-xz.yaml +47 -0
  163. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7-kselftest-ipc-cpupower.yaml +76 -0
  164. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7-kselftest-ipc-skipfile.yaml +71 -0
  165. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7-kselftest-ipc.yaml +71 -0
  166. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7-ltp-mutliple-tests.yaml +112 -0
  167. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7-ltp-timeouts.yaml +112 -0
  168. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7.yaml +46 -0
  169. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7be-prompt.yaml +47 -0
  170. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7be-qemu-image.yaml +48 -0
  171. tuxlava-0.1.0/test/unit/refs/definitions/qemu-armv7be.yaml +46 -0
  172. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-boot-args.yaml +46 -0
  173. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-kernel-gz.yaml +47 -0
  174. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-kselftest-ipc.yaml +76 -0
  175. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-kunit-module.yaml +61 -0
  176. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-kunit-overlays-paths.yaml +71 -0
  177. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-kunit-overlays.yaml +71 -0
  178. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-kunit.yaml +61 -0
  179. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-kvm-unit-tests.yaml +62 -0
  180. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-libgpiod.yaml +59 -0
  181. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-libhugetlbfs.yaml +63 -0
  182. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-perf-parameters.yaml +76 -0
  183. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-perf.yaml +61 -0
  184. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-rcutorture.yaml +59 -0
  185. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-v4l2.yaml +61 -0
  186. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386-vdso.yaml +63 -0
  187. tuxlava-0.1.0/test/unit/refs/definitions/qemu-i386.yaml +46 -0
  188. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips32-command.yaml +64 -0
  189. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips32-modules-overlays-kunit.yaml +71 -0
  190. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips32-modules-tgz.yaml +53 -0
  191. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips32-modules.yaml +53 -0
  192. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips32.yaml +46 -0
  193. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips32el.yaml +46 -0
  194. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips64.yaml +46 -0
  195. tuxlava-0.1.0/test/unit/refs/definitions/qemu-mips64el.yaml +46 -0
  196. tuxlava-0.1.0/test/unit/refs/definitions/qemu-ppc32.yaml +46 -0
  197. tuxlava-0.1.0/test/unit/refs/definitions/qemu-ppc64.yaml +46 -0
  198. tuxlava-0.1.0/test/unit/refs/definitions/qemu-ppc64le.yaml +46 -0
  199. tuxlava-0.1.0/test/unit/refs/definitions/qemu-riscv32.yaml +49 -0
  200. tuxlava-0.1.0/test/unit/refs/definitions/qemu-riscv64.yaml +46 -0
  201. tuxlava-0.1.0/test/unit/refs/definitions/qemu-s390-ltp-smoke-skipfile.yaml +70 -0
  202. tuxlava-0.1.0/test/unit/refs/definitions/qemu-s390-ltp-smoke.yaml +70 -0
  203. tuxlava-0.1.0/test/unit/refs/definitions/qemu-s390.yaml +46 -0
  204. tuxlava-0.1.0/test/unit/refs/definitions/qemu-sh4-boot-args.yaml +46 -0
  205. tuxlava-0.1.0/test/unit/refs/definitions/qemu-sh4.yaml +46 -0
  206. tuxlava-0.1.0/test/unit/refs/definitions/qemu-sparc64.yaml +46 -0
  207. tuxlava-0.1.0/test/unit/refs/definitions/qemu-x86_64-enable-kvm.yaml +46 -0
  208. tuxlava-0.1.0/test/unit/refs/definitions/qemu-x86_64-rootfs-gz.yaml +46 -0
  209. tuxlava-0.1.0/test/unit/refs/definitions/qemu-x86_64-rootfs-zst.yaml +46 -0
  210. tuxlava-0.1.0/test/unit/refs/definitions/qemu-x86_64-rootfs.yaml +45 -0
  211. tuxlava-0.1.0/test/unit/refs/definitions/qemu-x86_64.yaml +46 -0
  212. tuxlava-0.1.0/test/unit/refs/definitions/ssh-device.yaml +83 -0
  213. tuxlava-0.1.0/test/unit/refs/definitions/test-modules-default-path.yaml +76 -0
  214. tuxlava-0.1.0/test/unit/refs/definitions/tfa-tests.yaml +66 -0
  215. tuxlava-0.1.0/test/unit/refs/definitions/tuxmake-parameters.yaml +77 -0
  216. tuxlava-0.1.0/test/unit/refs/definitions/tuxmake.yaml +72 -0
  217. tuxlava-0.1.0/test/unit/refs/dummy.pem +0 -0
  218. tuxlava-0.1.0/test/unit/test_argparse.py +26 -0
  219. tuxlava-0.1.0/test/unit/test_device.py +3082 -0
  220. tuxlava-0.1.0/test/unit/test_tuxmake.py +114 -0
  221. tuxlava-0.1.0/test/unit/test_utils.py +28 -0
  222. tuxlava-0.1.0/test/validate.py +35 -0
  223. tuxlava-0.1.0/tuxlava/__init__.py +12 -0
  224. tuxlava-0.1.0/tuxlava/__main__.py +99 -0
  225. tuxlava-0.1.0/tuxlava/argparse.py +381 -0
  226. tuxlava-0.1.0/tuxlava/devices/__init__.py +67 -0
  227. tuxlava-0.1.0/tuxlava/devices/avh.py +144 -0
  228. tuxlava-0.1.0/tuxlava/devices/fastboot.py +348 -0
  229. tuxlava-0.1.0/tuxlava/devices/fvp.py +318 -0
  230. tuxlava-0.1.0/tuxlava/devices/nfs.py +188 -0
  231. tuxlava-0.1.0/tuxlava/devices/qemu.py +528 -0
  232. tuxlava-0.1.0/tuxlava/devices/ssh.py +87 -0
  233. tuxlava-0.1.0/tuxlava/exceptions.py +28 -0
  234. tuxlava-0.1.0/tuxlava/jobs.py +313 -0
  235. tuxlava-0.1.0/tuxlava/requests.py +37 -0
  236. tuxlava-0.1.0/tuxlava/templates/__init__.py +47 -0
  237. tuxlava-0.1.0/tuxlava/templates/devices/avh.yaml.jinja2 +20 -0
  238. tuxlava-0.1.0/tuxlava/templates/devices/base.yaml.jinja2 +388 -0
  239. tuxlava-0.1.0/tuxlava/templates/devices/fastboot.yaml.jinja2 +35 -0
  240. tuxlava-0.1.0/tuxlava/templates/devices/fvp.yaml.jinja2 +51 -0
  241. tuxlava-0.1.0/tuxlava/templates/devices/nfs.yaml.jinja2 +34 -0
  242. tuxlava-0.1.0/tuxlava/templates/devices/qemu.yaml.jinja2 +269 -0
  243. tuxlava-0.1.0/tuxlava/templates/devices/ssh.yaml.jinja2 +25 -0
  244. tuxlava-0.1.0/tuxlava/templates/jobs/avh.yaml.jinja2 +87 -0
  245. tuxlava-0.1.0/tuxlava/templates/jobs/fastboot-aosp.yaml.jinja2 +206 -0
  246. tuxlava-0.1.0/tuxlava/templates/jobs/fastboot-oe.yaml.jinja2 +107 -0
  247. tuxlava-0.1.0/tuxlava/templates/jobs/fastboot.yaml.jinja2 +212 -0
  248. tuxlava-0.1.0/tuxlava/templates/jobs/fvp-aemva.yaml.jinja2 +217 -0
  249. tuxlava-0.1.0/tuxlava/templates/jobs/fvp-morello.yaml.jinja2 +109 -0
  250. tuxlava-0.1.0/tuxlava/templates/jobs/nfs.yaml.jinja2 +136 -0
  251. tuxlava-0.1.0/tuxlava/templates/jobs/qemu.yaml.jinja2 +108 -0
  252. tuxlava-0.1.0/tuxlava/templates/jobs/ssh.yaml.jinja2 +60 -0
  253. tuxlava-0.1.0/tuxlava/templates/tests/android-xts.yaml.jinja2 +24 -0
  254. tuxlava-0.1.0/tuxlava/templates/tests/commands.yaml.jinja2 +16 -0
  255. tuxlava-0.1.0/tuxlava/templates/tests/fwts.yaml.jinja2 +17 -0
  256. tuxlava-0.1.0/tuxlava/templates/tests/hackingsession.yaml.jinja2 +31 -0
  257. tuxlava-0.1.0/tuxlava/templates/tests/kselftest.yaml.jinja2 +20 -0
  258. tuxlava-0.1.0/tuxlava/templates/tests/kunit.yaml.jinja2 +15 -0
  259. tuxlava-0.1.0/tuxlava/templates/tests/kvm-unit-tests.yaml.jinja2 +16 -0
  260. tuxlava-0.1.0/tuxlava/templates/tests/libgpiod.yaml.jinja2 +13 -0
  261. tuxlava-0.1.0/tuxlava/templates/tests/libhugetlbfs.yaml.jinja2 +17 -0
  262. tuxlava-0.1.0/tuxlava/templates/tests/ltp.yaml.jinja2 +24 -0
  263. tuxlava-0.1.0/tuxlava/templates/tests/mmtests.yaml.jinja2 +21 -0
  264. tuxlava-0.1.0/tuxlava/templates/tests/modules.yaml.jinja2 +20 -0
  265. tuxlava-0.1.0/tuxlava/templates/tests/morello-busybox-acpi.yaml.jinja2 +10 -0
  266. tuxlava-0.1.0/tuxlava/templates/tests/morello-busybox-dt.yaml.jinja2 +10 -0
  267. tuxlava-0.1.0/tuxlava/templates/tests/morello-busybox-purecap.yaml.jinja2 +24 -0
  268. tuxlava-0.1.0/tuxlava/templates/tests/morello-busybox-virtio.yaml.jinja2 +12 -0
  269. tuxlava-0.1.0/tuxlava/templates/tests/morello-debian-acpi.yaml.jinja2 +11 -0
  270. tuxlava-0.1.0/tuxlava/templates/tests/morello-debian-dt.yaml.jinja2 +12 -0
  271. tuxlava-0.1.0/tuxlava/templates/tests/morello-debian-purecap.yaml.jinja2 +26 -0
  272. tuxlava-0.1.0/tuxlava/templates/tests/morello-smc91x.yaml.jinja2 +12 -0
  273. tuxlava-0.1.0/tuxlava/templates/tests/morello-virtio_net.yaml.jinja2 +12 -0
  274. tuxlava-0.1.0/tuxlava/templates/tests/morello.yaml.jinja2 +18 -0
  275. tuxlava-0.1.0/tuxlava/templates/tests/network.yaml.jinja2 +16 -0
  276. tuxlava-0.1.0/tuxlava/templates/tests/perf.yaml.jinja2 +15 -0
  277. tuxlava-0.1.0/tuxlava/templates/tests/peripherals.yaml.jinja2 +13 -0
  278. tuxlava-0.1.0/tuxlava/templates/tests/rcutorture.yaml.jinja2 +13 -0
  279. tuxlava-0.1.0/tuxlava/templates/tests/systemd-analyze.yaml.jinja2 +13 -0
  280. tuxlava-0.1.0/tuxlava/templates/tests/tfa-tests.yaml.jinja2 +20 -0
  281. tuxlava-0.1.0/tuxlava/templates/tests/v4l2.yaml.jinja2 +15 -0
  282. tuxlava-0.1.0/tuxlava/templates/tests/vdso.yaml.jinja2 +17 -0
  283. tuxlava-0.1.0/tuxlava/templates/tests/xfstests.yaml.jinja2 +22 -0
  284. tuxlava-0.1.0/tuxlava/tests/__init__.py +98 -0
  285. tuxlava-0.1.0/tuxlava/tests/androidcts.py +40 -0
  286. tuxlava-0.1.0/tuxlava/tests/androidvts.py +50 -0
  287. tuxlava-0.1.0/tuxlava/tests/commands.py +28 -0
  288. tuxlava-0.1.0/tuxlava/tests/hackingsession.py +31 -0
  289. tuxlava-0.1.0/tuxlava/tests/kselftest.py +729 -0
  290. tuxlava-0.1.0/tuxlava/tests/kunit.py +29 -0
  291. tuxlava-0.1.0/tuxlava/tests/kvmunittests.py +29 -0
  292. tuxlava-0.1.0/tuxlava/tests/libgpiod.py +29 -0
  293. tuxlava-0.1.0/tuxlava/tests/libhugetlbfs.py +29 -0
  294. tuxlava-0.1.0/tuxlava/tests/ltp.py +167 -0
  295. tuxlava-0.1.0/tuxlava/tests/mmtests.py +225 -0
  296. tuxlava-0.1.0/tuxlava/tests/modules.py +29 -0
  297. tuxlava-0.1.0/tuxlava/tests/morello.py +223 -0
  298. tuxlava-0.1.0/tuxlava/tests/network.py +31 -0
  299. tuxlava-0.1.0/tuxlava/tests/perf.py +39 -0
  300. tuxlava-0.1.0/tuxlava/tests/peripherals.py +32 -0
  301. tuxlava-0.1.0/tuxlava/tests/rcutorture.py +29 -0
  302. tuxlava-0.1.0/tuxlava/tests/systemdanalyze.py +29 -0
  303. tuxlava-0.1.0/tuxlava/tests/tfatests.py +21 -0
  304. tuxlava-0.1.0/tuxlava/tests/v4l2.py +29 -0
  305. tuxlava-0.1.0/tuxlava/tests/vdso.py +29 -0
  306. tuxlava-0.1.0/tuxlava/tests/xfstests.py +53 -0
  307. tuxlava-0.1.0/tuxlava/tuxmake.py +77 -0
  308. tuxlava-0.1.0/tuxlava/utils.py +60 -0
  309. tuxlava-0.1.0/tuxlava.spec +63 -0
@@ -0,0 +1,11 @@
1
+ __pycache__/
2
+ tuxlava.egg-info/
3
+ .coverage
4
+ .eggs/
5
+ build/
6
+ dist/
7
+ env/
8
+ /htmlcov
9
+ public/
10
+ /tags
11
+ coverage.xml
@@ -0,0 +1,187 @@
1
+ include:
2
+ - '/support/docker/tuxlava-ci-images.yml'
3
+ - https://gitlab.com/Linaro/tuxpkg/-/raw/main/gitlab-ci-pipeline.yml
4
+
5
+ variables:
6
+ TUXPKG_PROJECT: tuxlava
7
+
8
+ stages:
9
+ - .pre
10
+ - trigger_bot_pipeline
11
+ - build-ci-images
12
+ - publish-ci-images
13
+ - unit-tests
14
+ - code-checks
15
+ - build
16
+ - test
17
+ - deploy
18
+ - .post
19
+
20
+ .job:
21
+ image: registry.gitlab.com/linaro/tuxpkg:ci-debian
22
+ before_script:
23
+ - apt update && apt install -y python3-pip virtualenv python3-virtualenv python3-venv python3-ruamel.yaml
24
+ - python3 -m venv $HOME/.foo-venv
25
+ - source $HOME/.foo-venv/bin/activate
26
+ - python3 -m pip install mkdocs-material tuxpkg ruamel.yaml # FIXME not in Debian
27
+ script:
28
+ - make $CI_JOB_NAME
29
+
30
+ .tuxlava:
31
+ except:
32
+ - schedules
33
+
34
+ .arm64:
35
+ only:
36
+ - branches@LinaroLtd/tuxsuite.com/tuxlava
37
+ tags:
38
+ - saas-linux-medium-arm64
39
+
40
+ .code-checks:
41
+ extends: .tuxlava
42
+ stage: code-checks
43
+ needs: []
44
+
45
+ stylecheck:
46
+ image: $CI_REGISTRY_IMAGE:ci-debian
47
+ extends: .code-checks
48
+ stage: test
49
+ script:
50
+ - python3 -m pip install --break-system-packages -r requirements-dev.txt
51
+ - make stylecheck
52
+ except:
53
+ - schedules
54
+
55
+ codespell:
56
+ extends: .code-checks
57
+ image: $CI_REGISTRY_IMAGE:ci-debian
58
+ stage: test
59
+ script:
60
+ - make spellcheck
61
+ except:
62
+ - schedules
63
+
64
+ wheel:
65
+ image: $CI_REGISTRY_IMAGE:ci-debian
66
+ stage: build
67
+ script:
68
+ - flit build
69
+ artifacts:
70
+ paths:
71
+ - dist/*.whl
72
+
73
+ .docker:
74
+ services:
75
+ - name: docker:dind
76
+ image: docker
77
+ only:
78
+ - tags
79
+ before_script:
80
+ - docker info
81
+ - docker login -u $DOCKER_USER -p $DOCKER_PASSWORD
82
+ - export tag="tuxlava/tuxlava:${CI_COMMIT_TAG##v}${TAG_APPEND}"
83
+ - export latest="tuxlava/tuxlava:latest${TAG_APPEND}"
84
+ script:
85
+ - docker build --pull --tag "${tag}" --tag "${latest}" .
86
+ - docker run "${tag}" tuxlava --version
87
+ - docker run "${latest}" tuxlava --version
88
+ - docker push "${tag}"
89
+ - docker push "${latest}"
90
+ needs:
91
+ - wheel
92
+
93
+ docker-amd64:
94
+ extends: .docker
95
+ stage: deploy
96
+ variables:
97
+ TAG_APPEND: -amd64
98
+
99
+ docker-arm64:
100
+ extends: .docker
101
+ stage: deploy
102
+ tags:
103
+ - saas-linux-large-arm64
104
+ variables:
105
+ TAG_APPEND: -arm64
106
+
107
+ .unit-tests:
108
+ extends: .tuxlava
109
+ stage: unit-tests
110
+ script:
111
+ - pip install -r requirements-dev.txt
112
+ - make test
113
+
114
+ unit-tests-python3.9:
115
+ extends: .unit-tests
116
+ image: $CI_REGISTRY_IMAGE:ci-python-3.9
117
+
118
+ unit-tests-python3.10:
119
+ extends: .unit-tests
120
+ image: $CI_REGISTRY_IMAGE:ci-python-3.10
121
+
122
+ unit-tests-python3.11:
123
+ extends: .unit-tests
124
+ image: $CI_REGISTRY_IMAGE:ci-python-3.11
125
+
126
+ unit-tests-python3.12:
127
+ extends: .unit-tests
128
+ image: $CI_REGISTRY_IMAGE:ci-python-3.12
129
+
130
+ unit-tests-python3.13:
131
+ extends: .unit-tests
132
+ image: $CI_REGISTRY_IMAGE:ci-python-3.13
133
+
134
+ unit-tests-python3.9-arm64:
135
+ extends: [.unit-tests, .arm64]
136
+ image: $CI_REGISTRY_IMAGE:ci-python-3.9
137
+
138
+ unit-tests-python3.10-arm64:
139
+ extends: [.unit-tests, .arm64]
140
+ image: $CI_REGISTRY_IMAGE:ci-python-3.10
141
+
142
+ unit-tests-python3.11-arm64:
143
+ extends: [.unit-tests, .arm64]
144
+ image: $CI_REGISTRY_IMAGE:ci-python-3.11
145
+
146
+ unit-tests-python3.12-arm64:
147
+ extends: [.unit-tests, .arm64]
148
+ image: $CI_REGISTRY_IMAGE:ci-python-3.12
149
+
150
+ unit-tests-python3.13-arm64:
151
+ extends: [.unit-tests, .arm64]
152
+ image: $CI_REGISTRY_IMAGE:ci-python-3.13
153
+
154
+ trigger_bot_pipeline:
155
+ stage: trigger_bot_pipeline
156
+ image: curlimages/curl:latest
157
+ script:
158
+ - echo "Triggering pipeline for pre-commit hook."
159
+ - |
160
+ curl -X POST \
161
+ -F token=$GITLABBOT_TRIGGER_TOKEN \
162
+ -F ref=main \
163
+ https://gitlab.com/api/v4/projects/$GITLABBOT_PROJECT_ID/trigger/pipeline
164
+ rules:
165
+ - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
166
+ when: always
167
+
168
+ doc:
169
+ extends: .job
170
+ stage: build
171
+ artifacts:
172
+ paths:
173
+ - public
174
+
175
+ pages:
176
+ extends: .job
177
+ stage: deploy
178
+ needs:
179
+ - doc
180
+ - repository
181
+ artifacts:
182
+ paths:
183
+ - public
184
+ only:
185
+ - tags
186
+ script:
187
+ - cp -r dist/repo public/packages/
@@ -0,0 +1,14 @@
1
+ FROM python:3.9-slim
2
+
3
+ # hadolint ignore=DL3008
4
+ RUN apt-get update && apt-get install -y --no-install-recommends \
5
+ curl build-essential \
6
+ && apt-get clean \
7
+ && rm -rf /var/lib/apt/lists/*
8
+
9
+ COPY dist/*.whl /
10
+
11
+ # hadolint ignore=DL3013
12
+ RUN pip --no-cache-dir install /*.whl
13
+
14
+ CMD ["tuxlava", "--help"]
@@ -0,0 +1,30 @@
1
+ FROM debian
2
+ ARG EXTRA_PACKAGES
3
+
4
+ COPY debian/control /tuxpkg/debian/control
5
+
6
+ RUN apt-get update \
7
+ && apt-get install -qy auto-apt-proxy \
8
+ && apt-get build-dep -qy /tuxpkg \
9
+ && apt-get install -q=2 \
10
+ curl \
11
+ black \
12
+ codespell \
13
+ flake8 \
14
+ flit \
15
+ git \
16
+ make \
17
+ mkdocs \
18
+ mypy \
19
+ python3 \
20
+ python3-pip \
21
+ ${EXTRA_PACKAGES} \
22
+ && true
23
+
24
+ RUN if grep '^Source: tuxpkg' /tuxpkg/debian/control; then exit; fi; \
25
+ /usr/lib/apt/apt-helper download-file https://linaro.gitlab.io/tuxpkg/packages/signing-key.gpg /etc/apt/trusted.gpg.d/tuxpkg.gpg \
26
+ && echo 'deb https://linaro.gitlab.io/tuxpkg/packages/ ./' > /etc/apt/sources.list.d/tuxpkg.list \
27
+ && apt-get update \
28
+ && apt-get install -q=2 -y tuxpkg
29
+
30
+ # vim: ft=dockerfile
@@ -0,0 +1,12 @@
1
+ FROM fedora
2
+ ARG EXTRA_PACKAGES
3
+
4
+ COPY *.spec /tuxpkg/
5
+ RUN dnf install -y dnf-plugins-core rpm-build git python3 python3-pip python3-yaml ${EXTRA_PACKAGES} \
6
+ && dnf builddep -y /tuxpkg/*.spec
7
+
8
+ RUN if [ -f /tuxpkg/tuxpkg.spec ]; then exit; fi; \
9
+ printf '[tuxpkg]\nname=tuxpkg\ntype=rpm-md\nbaseurl=https://linaro.gitlab.io/tuxpkg/packages/\ngpgcheck=1\ngpgkey=https://linaro.gitlab.io/tuxpkg/packages/repodata/repomd.xml.key\nenabled=1\n' > /etc/yum.repos.d/tuxpkg.repo \
10
+ && dnf install -y tuxpkg
11
+
12
+ # vim: ft=dockerfile
tuxlava-0.1.0/LICENSE ADDED
@@ -0,0 +1,19 @@
1
+ Copyright 2024 Linaro Limited
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
4
+ this software and associated documentation files (the "Software"), to deal in
5
+ the Software without restriction, including without limitation the rights to
6
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
7
+ of the Software, and to permit persons to whom the Software is furnished to do
8
+ so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
tuxlava-0.1.0/Makefile ADDED
@@ -0,0 +1,40 @@
1
+ export PROJECT := tuxlava
2
+ export TUXPKG_MIN_COVERAGE := 95
3
+ export TUXPKG_FLAKE8_OPTIONS := "--exclude=site-packages"
4
+ check: spellcheck stylecheck test
5
+
6
+ include $(shell tuxpkg get-makefile)
7
+
8
+ .PHONY: tags
9
+
10
+ help:
11
+ @echo 'Possible targets:'
12
+ @echo ''
13
+ @echo ' doc - Build documentation'
14
+ @echo ' stylecheck - Check code style'
15
+ @echo ' spellcheck - Check code spelling'
16
+ @echo ' tags - Generate an index file of the surce and test code (ctags)'
17
+ @echo ' test - Run unit tests'
18
+
19
+ stylecheck: style flake8
20
+
21
+ spellcheck:
22
+ codespell \
23
+ -I codespell-ignore-list \
24
+ --check-filenames \
25
+ --skip '.git,public,dist,*.sw*,*.pyc,tags,*.json,.coverage,htmlcov,*.jinja2,*.yaml'
26
+
27
+ doc: docs/index.md
28
+ mkdocs build
29
+
30
+ docs/index.md: README.md scripts/readme2index.sh
31
+ scripts/readme2index.sh $@
32
+
33
+ doc-serve:
34
+ mkdocs serve
35
+
36
+ lava-validate:
37
+ python3 test/validate.py
38
+
39
+ tags:
40
+ ctags -R $(PROJECT)/ test/
tuxlava-0.1.0/PKG-INFO ADDED
@@ -0,0 +1,109 @@
1
+ Metadata-Version: 2.1
2
+ Name: tuxlava
3
+ Version: 0.1.0
4
+ Summary: Command line tool for generating LAVA jobs
5
+ Home-page: https://tuxsuite.com/
6
+ Author: Senthil Kumaran
7
+ Author-email: senthil.kumaran@linaro.org
8
+ Requires-Python: >=3.6
9
+ Description-Content-Type: text/markdown
10
+ Classifier: License :: OSI Approved :: MIT License
11
+ Requires-Dist: jinja2
12
+ Requires-Dist: requests
13
+ Requires-Dist: PyYAML
14
+
15
+ <div align="center">
16
+ <img src="docs/tuxlava_full.svg" alt="TuxLAVA Logo" width="40%" />
17
+ </div>
18
+
19
+ [![Pipeline Status](https://gitlab.com/Linaro/tuxrun/badges/master/pipeline.svg)](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/pipelines)
20
+ [![coverage report](https://gitlab.com/Linaro/tuxrun/badges/master/coverage.svg)](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/commits/master)
21
+ [![PyPI version](https://badge.fury.io/py/tuxrun.svg)](https://pypi.org/project/tuxlava/)
22
+ [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
23
+ [![PyPI - License](https://img.shields.io/pypi/l/tuxrun)](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/blob/main/LICENSE)
24
+
25
+ [Documentation](https://tuxlava.org/) - [Repository](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava) - [Issues](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/-/issues)
26
+
27
+ TuxLAVA, by [Linaro](https://www.linaro.org/), is a python library and
28
+ a command line tool to generate Linaro Automated Validation
29
+ Architecture a.k.a [LAVA](https://www.lavasoftware.org/) jobs for
30
+ devices of the following type and has a standard list of devices that
31
+ are supported along with tests that could be run on these devices.
32
+
33
+ * AVH
34
+ * FASTBOOT
35
+ * FVP
36
+ * NFS
37
+ * QEMU
38
+ * SSH
39
+
40
+ TuxLAVA is a part of [TuxSuite](https://tuxsuite.com), a suite of
41
+ tools and services to help with Linux kernel development.
42
+
43
+ [[_TOC_]]
44
+
45
+ # Installing TuxLAVA
46
+
47
+ - [From PyPI](docs/install-pypi.md)
48
+
49
+ # Using TuxLAVA as a library
50
+
51
+ TuxLAVA can be used as a python library as follows:
52
+
53
+ ```shell
54
+ #!/usr/bin/env python
55
+
56
+ from tuxlava.jobs import Job
57
+
58
+ job = Job(
59
+ device="nfs-x86_64",
60
+ kernel="https://example.com/bzImage",
61
+ rootfs="https://example.com/rootfs.tar.xz",
62
+ tests=["ltp-smoke", "ltp-math"],
63
+ modules="https://example.com/modules.tar.xz",
64
+ parameters={"LAVA_JOB_PRIORITY": 50},
65
+ timeouts={"deploy": 20},
66
+ )
67
+ job.initialize()
68
+ print(job.render())
69
+ ```
70
+
71
+ # Using TuxLAVA as a command line
72
+
73
+ Call tuxlava as follows:
74
+
75
+ ```shell
76
+ tuxlava --device nfs-x86_64 \
77
+ --kernel /path/or/url/to/Image
78
+ --modules /path/or/url/to/modules /usr/ \
79
+ --rootfs /path/or/url/to/rootfs \
80
+ --tests boot
81
+ ```
82
+
83
+ TuxLAVA will output the LAVA job to the stdout with the provided
84
+ arguments for x86_64 device
85
+
86
+ The complete list of tuxlava options is available with the following
87
+ command:
88
+
89
+ ```shell
90
+ tuxlava --help
91
+ ```
92
+
93
+ # Examples
94
+
95
+ LAVA job to boot test a mipsel kernel at https://mykernel.org/vmlinux:
96
+
97
+ ```shell
98
+ tuxlava --device qemu-mips32el \
99
+ --kernel https://mykernel.org/vmlinux
100
+ ```
101
+
102
+ Generate a LAVA job with *ltp-smoke* test:
103
+
104
+ ```shell
105
+ tuxlava --device qemu-mips32el \
106
+ --kernel https://mykernel.org/vmlinux \
107
+ --test ltp-smoke
108
+ ```
109
+
@@ -0,0 +1,94 @@
1
+ <div align="center">
2
+ <img src="docs/tuxlava_full.svg" alt="TuxLAVA Logo" width="40%" />
3
+ </div>
4
+
5
+ [![Pipeline Status](https://gitlab.com/Linaro/tuxrun/badges/master/pipeline.svg)](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/pipelines)
6
+ [![coverage report](https://gitlab.com/Linaro/tuxrun/badges/master/coverage.svg)](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/commits/master)
7
+ [![PyPI version](https://badge.fury.io/py/tuxrun.svg)](https://pypi.org/project/tuxlava/)
8
+ [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
9
+ [![PyPI - License](https://img.shields.io/pypi/l/tuxrun)](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/blob/main/LICENSE)
10
+
11
+ [Documentation](https://tuxlava.org/) - [Repository](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava) - [Issues](https://gitlab.com/LinaroLtd/tuxsuite.com/tuxlava/-/issues)
12
+
13
+ TuxLAVA, by [Linaro](https://www.linaro.org/), is a python library and
14
+ a command line tool to generate Linaro Automated Validation
15
+ Architecture a.k.a [LAVA](https://www.lavasoftware.org/) jobs for
16
+ devices of the following type and has a standard list of devices that
17
+ are supported along with tests that could be run on these devices.
18
+
19
+ * AVH
20
+ * FASTBOOT
21
+ * FVP
22
+ * NFS
23
+ * QEMU
24
+ * SSH
25
+
26
+ TuxLAVA is a part of [TuxSuite](https://tuxsuite.com), a suite of
27
+ tools and services to help with Linux kernel development.
28
+
29
+ [[_TOC_]]
30
+
31
+ # Installing TuxLAVA
32
+
33
+ - [From PyPI](docs/install-pypi.md)
34
+
35
+ # Using TuxLAVA as a library
36
+
37
+ TuxLAVA can be used as a python library as follows:
38
+
39
+ ```shell
40
+ #!/usr/bin/env python
41
+
42
+ from tuxlava.jobs import Job
43
+
44
+ job = Job(
45
+ device="nfs-x86_64",
46
+ kernel="https://example.com/bzImage",
47
+ rootfs="https://example.com/rootfs.tar.xz",
48
+ tests=["ltp-smoke", "ltp-math"],
49
+ modules="https://example.com/modules.tar.xz",
50
+ parameters={"LAVA_JOB_PRIORITY": 50},
51
+ timeouts={"deploy": 20},
52
+ )
53
+ job.initialize()
54
+ print(job.render())
55
+ ```
56
+
57
+ # Using TuxLAVA as a command line
58
+
59
+ Call tuxlava as follows:
60
+
61
+ ```shell
62
+ tuxlava --device nfs-x86_64 \
63
+ --kernel /path/or/url/to/Image
64
+ --modules /path/or/url/to/modules /usr/ \
65
+ --rootfs /path/or/url/to/rootfs \
66
+ --tests boot
67
+ ```
68
+
69
+ TuxLAVA will output the LAVA job to the stdout with the provided
70
+ arguments for x86_64 device
71
+
72
+ The complete list of tuxlava options is available with the following
73
+ command:
74
+
75
+ ```shell
76
+ tuxlava --help
77
+ ```
78
+
79
+ # Examples
80
+
81
+ LAVA job to boot test a mipsel kernel at https://mykernel.org/vmlinux:
82
+
83
+ ```shell
84
+ tuxlava --device qemu-mips32el \
85
+ --kernel https://mykernel.org/vmlinux
86
+ ```
87
+
88
+ Generate a LAVA job with *ltp-smoke* test:
89
+
90
+ ```shell
91
+ tuxlava --device qemu-mips32el \
92
+ --kernel https://mykernel.org/vmlinux \
93
+ --test ltp-smoke
94
+ ```
@@ -0,0 +1 @@
1
+ damon
@@ -0,0 +1,5 @@
1
+ tuxlava (0.1.0-1) UNRELEASED; urgency=medium
2
+
3
+ * Initial release
4
+
5
+ -- Senthil Kumaran <senthil.kumaran@linaro.org> Mon, 03 Feb 2025 20:00:00 +0530
@@ -0,0 +1,28 @@
1
+ Source: tuxlava
2
+ Maintainer: Senthil Kumaran <senthil.kumaran@linaro.org>
3
+ Section: python
4
+ Priority: optional
5
+ Build-Depends: debhelper-compat (= 13),
6
+ dh-python,
7
+ flit,
8
+ wget,
9
+ python3-all,
10
+ python3-pytest,
11
+ python3-pytest-cov,
12
+ python3-pytest-mock,
13
+ python3-flask
14
+ Standards-Version: 3.9.6
15
+ Homepage: https://tuxsuite.com/
16
+
17
+ Package: tuxlava
18
+ Architecture: all
19
+ Depends: python3 (>= 3.6),
20
+ python3-attr,
21
+ python3-requests,
22
+ python3-yaml,
23
+ ${misc:Depends},
24
+ ${python3:Depends},
25
+ Description: TuxLAVA is a python library and tool to generate LAVA jobs for
26
+ devices of type qemu, fvp, fastboot and nfs. TuxLAVA has standard list of
27
+ devices that are supported along with tests that could be run on these
28
+ devices.
@@ -0,0 +1,5 @@
1
+ [DEFAULT]
2
+ ignore-branch = True
3
+ pristine-tar = False
4
+ upstream-tree = TAG
5
+ upstream-tag = v%(version)s
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/make -f
2
+
3
+ export PYBUILD_NAME = tuxlava
4
+
5
+ export PYBUILD_TEST_PYTEST = 1
6
+ export PYBUILD_TEST_ARGS = test/
7
+ export LC_ALL = C.UTF-8
8
+
9
+ # Support non-flit builds - requires setup.py to be present (which is the case
10
+ # in pypi release tarballs)
11
+ ifneq ($(shell pybuild --list-systems | grep flit),)
12
+ export PYBUILD_SYSTEM = flit
13
+ endif
14
+
15
+ %:
16
+ dh $@ --with python3 --buildsystem=pybuild
17
+
18
+ # FIXME this should not be necessary with PYBUILD_TEST_PYTEST = 1 above
19
+ # but I can't get it to work for some reason.
20
+ override_dh_auto_test:
21
+ for p in $$(py3versions --supported); do $$p -m pytest test/; done
@@ -0,0 +1 @@
1
+ 3.0 (quilt)