From: Richard Palethorpe <rpalethorpe@suse.de>
To: Marius Kittler <mkittler@suse.de>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [RFC PATCH] Add simple Alpine container
Date: Wed, 27 Sep 2023 08:00:25 +0100 [thread overview]
Message-ID: <87ttrgdqhc.fsf@suse.de> (raw)
In-Reply-To: <2307102.ElGaqSPkdT@linux-9lzf>
Hello,
Marius Kittler <mkittler@suse.de> writes:
> Am Dienstag, 26. September 2023, 11:01:01 CEST schrieb Richard Palethorpe via
> ltp:
>> Can be built with `docker/podman build .`. Then run with `podman -it
>> run sh`. It contains Kirk in /opt/kirk. So `cd /opt/kirk && ./kirk -f
>> ltp --run-suite syscalls` will run some tests.
>> ---
>>
>> Hello,
>>
>> This builds and installs the LTP and Kirk inside an Alpine
>> container. The idea is to use a standard container workflow to build
>> and run the LTP from source. This helps with testing LTP itself and
>> running tests inside a container.
>>
>> I'd like to add some container files to upstream to help with various
>> workflows.
>>
>> The container has a number of problems:
>>
>> 1. If the Git directory has build artifacts in it, these are copied
>> into the container (.dockerignore may help)
>
> Doing an out-of-source-tree build might also help. Even just printing a
> warning/error in case the repository has already been configured might be good
> enough.
Good idea, perhaps check with Git that it is a clean
checkout. Especially because one could accidentally copy private files
into the container.
>
>> 3. Where should we put container files and how should we name them?
>
> Maybe just a subdirectory `container` and within that one subdirectory for
> each container.
>
>> Also, for developing tests, it may be better to build the LTP outside
>> of a container then copy in the files.
>
> How would you do that? Relevant container-specific dependencies such as musl
> are within the container. One had to expose the container's filesystem tree
> somewhere in the regular filesystem and had to use that as prefix. That doesn't
> seem like an easy way of doing things.
>
> By the way, to develop "[PATCH v1] Skip cgroup-related tests if `/sys/fs/
> cgroup` readonly" I simply started on a fresh Alpine container, invoked our CI
> script for installing dependencies, followed the build instructions from the
> README, committed the container for later use and then just continued
> developing within the container as usual. (I was still using my editor from
> outside the container. So the clangd integration still assumed glibc headers.
> Maybe one could expose the container's filesystem on the host and change
> include paths via `.clangd` to prefer musl headers from within the container.)
I'm not sure, you can export the LTP dir as a volume and use 'podman cp'
to copy the headers to somewhere on your host. This does feel hacky
though.
I suppose if clangd can run inside the container then it should be
possible to export its ports and connect to it from outside. However I
just have a checkout of the musl repo and manually search it.
--
Thank you,
Richard.
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2023-09-27 7:29 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-26 9:01 [LTP] [RFC PATCH] Add simple Alpine container Richard Palethorpe via ltp
2023-09-26 10:51 ` Marius Kittler
2023-09-27 7:00 ` Richard Palethorpe [this message]
2023-09-27 6:27 ` Petr Vorel
2023-09-27 7:29 ` Richard Palethorpe
2023-09-27 9:05 ` Petr Vorel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ttrgdqhc.fsf@suse.de \
--to=rpalethorpe@suse.de \
--cc=ltp@lists.linux.it \
--cc=mkittler@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.