[Koha-devel] Building Koha Debian packages in Docker

David Cook dcook at prosentient.com.au
Tue Nov 27 01:32:33 CET 2018


While I can see the utility of that usage, are there any examples of other projects doing that? I don’t think that I’ve seen that elsewhere, and it doesn’t seem like the Debian way of doing things. 

 

It seems to me that the Build-Depends should just be for build dependencies, and Depends should be for package dependencies. The lack of packaged dependencies could be caught in a different part of the pipeline. And when it is caught, then that dependency could be packaged, and the same packaged koha-common could be used. That seems to be a more standard way of handling the packaging process, no? 

 

David Cook

Systems Librarian

Prosentient Systems

72/330 Wattle St

Ultimo, NSW 2007

Australia

 

Office: 02 9212 0899

Direct: 02 8005 0595

 

From: koha-devel-bounces at lists.koha-community.org [mailto:koha-devel-bounces at lists.koha-community.org] On Behalf Of Chris Cormack
Sent: Monday, 26 November 2018 6:51 PM
To: koha-devel at lists.koha-community.org
Cc: 'koha-devel' <koha-devel at lists.koha-community.org>
Subject: Re: [Koha-devel] Building Koha Debian packages in Docker

 

More than just the tests. It also makes sure all the dependencies are packaged too. That way you can't build a package you can't install (because one of its depencies isn't packaged)

Chris 

On 26 November 2018 8:19:36 PM NZDT, David Cook <dcook at prosentient.com.au <mailto:dcook at prosentient.com.au> > wrote:

Thanks for sharing that, Tomas. I thought that you’d already done some work on this, but it wasn’t jumping out at me the other day. Where’s it in your gitlab? Is it the koha-dpkg-docker repository?

 

I’m curious though why one would use pbuilder in Docker. Is it so that you can use the base.tgz files to store the koha-perldeps? That could be convenient.

 

I’m curious why we have every Koha Perl dependency in the build dependencies section. Is it for the sake of the tests? Surely Koha’s “build” dependencies would be pretty low. Just whatever is needed by rewrite-Config.PL really? But I suppose the tests would have a lot of dependencies, which could be painful to enumerate separately.  

 

David Cook

Systems Librarian

Prosentient Systems

72/330 Wattle St

Ultimo, NSW 2007

Australia

 

Office: 02 9212 0899

Direct: 02 8005 0595

 

From: Tomas Cohen Arazi [mailto:tomascohen at gmail.com] 
Sent: Thursday, 22 November 2018 8:38 PM
To: David Cook <dcook at prosentient.com.au <mailto:dcook at prosentient.com.au> >
Cc: koha-devel <koha-devel at lists.koha-community.org <mailto:koha-devel at lists.koha-community.org> >
Subject: Re: Building Koha Debian packages in Docker

 

David, try this

 

https://hub.docker.com/r/koha/koha-dpkg/

 

I basically maintain the base.tgz files outside of it. It works nicely. The source code is on my gitlab. The plan was to automate the packages building and eventually set a pipeline for also testing the install process of the results.

 

El 22 nov. 2018 04:59, "David Cook" <dcook at prosentient.com.au <mailto:dcook at prosentient.com.au> > escribió:

Hi folks,

 

I was wondering if anyone had a Docker image for building Koha Debian packages. I scouted around a bit and found this image from Jonathan https://gitlab.com/joubu/koha-dpkg-docker but nothing else. 

 

So I’ve put together my own project which you can find here: https://gitlab.com/minusdavid/koha-deb-builder-docker

 

The “build.sh” script is still rough around the edges, but it all works. Basically you build the Docker image, dump a tarball into “input” (generated using git archive with a properly formatted prefix and filename), run a container, run the build.sh script, and then when the process is done you should have some Debian packages in your “output” directory which is shared with your host computer. 

 

Happy to accept pull requests or talk about it in general. The Docker image is pretty heavy, but that’s because the Debian packaging tools are heavy.

 

The build process is also a bit long because it has to install all the “build dependencies”, although I think we could tweak the debian/control file so that we don’t have to install everything just to build the packages. 

 

Also I couldn’t get the tests to complete successfully on the first go so I’ve turned them off for now. Fixing the image or the tests so that they can run would be cool. 

 

Anyway, just thought I’d share that with everyone. 

 

David Cook

Systems Librarian

Prosentient Systems

72/330 Wattle St

Ultimo, NSW 2007

Australia

 

Office: 02 9212 0899

Direct: 02 8005 0595

 

 


-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.koha-community.org/pipermail/koha-devel/attachments/20181127/707044f9/attachment-0001.html>


More information about the Koha-devel mailing list