Package testing with Salsa CI for new packages
Hello,
It has been quite some time since I contributed any packaging to Debian, but
in the last year or so I have been trying to put together some packaging for
MoinMoin 2. As many of you will be aware, MoinMoin (colloquially referenced as
"Moin" hereafter) is currently used by Debian for the Debian Wiki, but this
service runs Moin 1.9 which requires Python 2.
After some discussion, I have put together a few packages for Moin 2 and its
dependencies that are not currently packaged in Debian. These have been hosted
on Salsa and are available here:
https://salsa.debian.org/moin-team/
A few of these packages, named using "old-" as a prefix, are discarded
attempts and only remain because I do not have privileges to delete them. The
rest have been packaged using the gbp tooling and associated techniques.
Although I feel that this packaging effort is now fairly well advanced in that
I can build packages locally, install them in a chroot, and the installed
software appears to work correctly (perhaps with some additional fixes
required related to behaviour that may be inherent in the software itself), I
find myself trying to satisfy various packaging requirements. One of these is
the ability to run the software's test suite successfully.
Here, it would seem that the most prudent approach is to use the Salsa CI
service instead of trying to get the test suite to run during the package
build process. One motivation for doing so involves not having to specify
build dependencies for packages only needed for test suite execution, which
itself requires the invocation of gbp buildpackage with --extra-package
arguments since some packages are completely new to Debian.
I have also found it difficult to persuade the tests to run successfully
during the build process. A few of these attempt to invoke the moin program,
but this cannot be located since it is not installed in the build environment.
(There may be other failure situations, but these will be dealt with
eventually.) I find the different test features of the build tooling -
dh_auto_test, autopkgtest, and so on - all rather confusing and poorly
summarised. However, one conclusion is that testing a system, as some of the
test cases appear to do, and as opposed to testing library functionality, is
not necessarily appropriate when directed by something like dh_auto_test.
For another package I have been working on, the Salsa CI facility has proven
to be usable, configured using files in debian/test, particularly as it allows
test-related dependencies to be specified independently. However, this other
package has no dependencies that are currently unpackaged in Debian.
Meanwhile, the testing of this new Moin package depends on brand new packages
somehow being made available.
So, I would appreciate guidance on how I might enable testing of this new Moin
package, along with its new dependencies, in the Salsa environment or any
other appropriate environment that would satisfy Debian packaging needs and
policies. It would also be quite helpful if built packages might be published
somewhere for people to test, but this is a separate consideration even if
such packages would obviously need to be generated as part of the testing
regime.
Thanks for reading this far and for any guidance that might be offered!
Regards,
Paul
Reply to: