From: Ihor Radchenko <yantar92@posteo.net>
To: Simon Tournier <zimon.toutoune@gmail.com>
Cc: emacs-orgmode@gnu.org, Philip Kaludercic <philipk@posteo.net>,
Bastien <bzg@gnu.org>
Subject: Re: About org-mode-tests and CI
Date: Thu, 17 Nov 2022 11:58:46 +0000 [thread overview]
Message-ID: <87fsehbxmx.fsf@localhost> (raw)
In-Reply-To: <87sfiiycat.fsf@gmail.com>
Simon Tournier <zimon.toutoune@gmail.com> writes:
> Recently, Bastien told me about using GNU Guix for some tests of Org.
> Neat! Then, Bastien pointed this org-mode-tests [1] effort.
>
> Unrelated, Philip provides Guix recipes [2] for various old Emacs
> versions.
>
> Org and Guix are part of the GNU system. Therefore, we could imagine to
> bridge instead of relying on Debian. :-)
>
> Moreover, what would be another advantage? Run the exact same
> computational environment from locally to SourceHut builds.
I am not sure what you mean here.
Also, note that org-mode-tests has /local folder running local podman
builds with reproducible environment. See
https://git.sr.ht/~bzg/org-mode-tests/#usage
> Two directions:
>
> 1. The SourceHut image of Guix [3] could be used but – and maybe I am
> missing a point since I am not an expert about SourceHut CI – the state
> (revision) of this image is not controlled and thus it requires
> something like:
>
> image: guix
> tasks:
> - guix: |
> guix pull -C project/path/to/channels.scm
>
> Well, I do not know how SourceHut is caching but somehow the .yml
> configuration leads to always the same computational environment
> (image), in which “make test” is run. Therefore, the CI could spend
> more time in computing again and again this fixed state than running the
> Org test suite. :-)
I do not think that is it dramatically different from other images
(debian/ubuntu). Need to install non-default packages one way or
another.
> 2. Using [2], it appears to me almost straightforward to build
> beforehand a Docker pack containing all the requirements; say emacs@26,
> curl, gcc-toolchain, git, etc. And this Docker pack would be built
> using GNU Guix,
>
> guix pack -f docker -m manifest.scm
>
> where the file manifest.scm lists all the requirements. Using adequate
> option as --save-provenance, this Docker pack can be inspectable [4] and
> it could be stored to any Docker registery.
>
> Hence, the line,
>
> image: debian/oldstable
>
> or some images as,
>
> image: ubuntu/focal
> repositories:
> emacs: http://ppa.launchpad.net/kelleyk/emacs/ubuntu focal main 3FF0E01EEAAFC9CD
>
> would be replaced by some images produced by “guix pack -f docker”
> stored to some Docker registery.
I guess it could be fine. Though I am not sure how the images are going
to be upgraded then as the required packages (Elisp and system) are
updated to new versions.
> All in all, I forked the project [1] but the SourceHuts build (CI)
> requires some fee, right? Well, let me know how we could test this
> approach of using Guix as base for running Org test suite.
>
> (The maintenance of such can be part of the story too. ;-))
I think Bastien will contact you about this. He has access to the build
servers.
> Last, without putting the cart before the horse, I think this work could
> be a kind of preliminary proof-of-concept for testing Emacs packages
> (ELPA, MELPA, etc.).
Yep. Or maybe even Emacs itself? I am not sure if Emacs is currently
using CI. Just recall talks about it.
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
next prev parent reply other threads:[~2022-11-17 11:59 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-16 18:38 About org-mode-tests and CI Simon Tournier
2022-11-16 19:56 ` Philip Kaludercic
2022-11-17 11:58 ` Ihor Radchenko [this message]
2022-11-19 13:00 ` Bastien
2022-11-19 13:03 ` Philip Kaludercic
2022-11-19 13:06 ` Bastien
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
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fsehbxmx.fsf@localhost \
--to=yantar92@posteo.net \
--cc=bzg@gnu.org \
--cc=emacs-orgmode@gnu.org \
--cc=philipk@posteo.net \
--cc=zimon.toutoune@gmail.com \
/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.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).