aurweb testing environment using Docker

Filipe Laíns lains at archlinux.org
Tue Mar 24 22:47:30 UTC 2020


On Mon, 2020-03-23 at 19:04 -0400, Lukas Fleischer wrote:
> We are currently working on a testing environment using Docker.
> 
> The idea is to have something that is super easy to set up and still
> mirrors our production environment as closely as possible. It should
> ideally allow future contributors to test their patch submissions
> without having to go through the hassle of manually setting up a full
> development environment.
> 
> Shout-out to Yaron (Cc) for sending me an initial draft.
> 
> One of the big design decisions is whether everything should be in a
> single Docker container vs. several smaller atomic containers (i.e.
> separate containers for the HTTP server, the database, the SSH/Git
> interface, ...), as often done in production environments.
> 
> The first approach has the benefit of simplicity from a user's
> perspective and being able to easily set up the environment using just
> Docker.
> 
> The second approach has the benefit of atomicity (simplicity from a
> developer's perspective) and is closer to what we would do if we would
> actually use Docker for our production environment. It would probably
> require docker-compose (or another tool) in addition to Docker to
> provide the same level of convenience we can achieve with the other
> approach using just Docker, though.
> 
> Since Yaron and me have conflicting opinions, I would like to hear some
> more arguments and views.
> 
> Thanks!
> Lukas

I think we should build on our existent ansible infrastructure and use
ansible-bender for this. We already have all the required roles and the
aur-dev playbook defined. Using ansible-bender we can generate from a
playbook.

About the single container vs multiple containers question, I think
just one should be enough. I don't really see the need for multiple
containers and it comes with a bigger maintenance burden. I am not
really a target user for the docker development setup so take my
opinion with a grain of salt.

If we end up using ansible-bender to generate the containers, since we
have all the components defined in separate roles, maintaining multiple
containers shouldn't be that much of an issue.

Cheers,
Filipe Laíns
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <https://lists.archlinux.org/pipermail/aur-dev/attachments/20200324/941a60ec/attachment.sig>


More information about the aur-dev mailing list