emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
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>


  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).