Testings on multiple architectures

Dmitry V. Levin ldv at altlinux.org
Tue Aug 16 14:34:26 UTC 2016


On Fri, Aug 12, 2016 at 11:51:31PM +0800, Yun-Chih Chen wrote:
> Here is a list of architectures, either listed in "debian/control" or
> "linux/*", against which I've tested strace:
> 
> * alpha: Tested on Debian Lenny, kernel:2.6, with old gcc+glibc,
> failed to boot custom-compiled linux-kernel+busybox
> * amd64: OBS native support
> * arm64: OBS native support
> * armeb: OBS native support
> * armel: OBS native support
> * armhf: OBS native support
> * hppa: No available QEMU emulator
> * i386: OBS native support
> * ia64: No available QEMU emulator
> * m68k: Buildroot only has uclibc, which cannot compile tests having `fork`.
> * microblaze: Cross compile
> * microblazeel: Cross compile
> * mips: Cross compile
> * mipsel: Cross compile
> * mips64: Cross compile
> * mips64el: Cross compile
> * or1k: Debian port dead
> * powerpc: OBS native support
> * powerpcspe: OBS native support
> * ppc64: OBS native support
> * ppc64el: OBS native support
> * s390: No available QEMU emulator
> * s390x: OBS native support
> * sh4: Cross compile
> * sparc: Cross-compiled by buildroot, got tremendous amounts of failed tests.
> * sparc64: Tested on Debian Wheezy, with failed tests; same as sparc,
> if cross-compiled with buildroot
> * x32: Native build
> * xtensa: Cross compile
> 
> Those labeled with "OBS native support" are natively supported in OBS
> and has been well-tested, as can be seen here[1].
> Those labeled with "Cross compile" are not supported by OBS.
> Therefore, I use buildroot to build a custom rootfs and boot/test them
> on qemu, as can be seen in my OBS repository[2] in the form of
> "strace-[ARCH]", each architecture per package.
> You can clone the project and use the scripts attached below to update
> version, trigger rebuild.  These packages are all linked to
> "git://github.com/strace/strace.git", which means that it will fetch
> the source from the head commit whenever a rebuild is triggered.  You
> can modify the url in each package's _service file to point to your
> local clone.  Whenever you push a new commit, you can run the
> rebuild.sh script to rebuild all packages so as to test your commit.
> I do not utilize Github's Webhook because it is not as flexible and it
> adds a dummy commit to the OBS repository whenever a rebuild is
> triggered.
> 
> Please see the comment in the scripts for usage and examples.
> 
> [1] https://build.opensuse.org/package/show/home:yunchih/strace
> [2] https://build.opensuse.org/project/show/home:yunchih

It's not quite clear from this description how one can implement the
following scenario: for each push to a specified branch of a specified git
repository, e.g. master branch of https://github.com/strace/strace, the
corresponding commit is automatically tested on all configurations
supported by this testing infrastructure.

Could you write a step by step instruction how one could implement this
scenario using the result of your work, please?


-- 
ldv
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20160816/e9a06f20/attachment.bin>


More information about the Strace-devel mailing list