I'm sorry I haven't had the time to review or contribute yet, but I think 
it'll be a very useful project - especially for new contributors that might 
have a little docker experience. The current vagrant solution is heavy, 
does not work properly on windows and some linuxes, and isn't that easy to 
maintain or deploy. I'd be in favour of adding the docker files directly to 
django/django to minimise setup burden (DJANGO_PATH), and improving the 
contributing docs to show users how to test using docker.

One of the hardest things I found at sprints was getting development 
environments setup to effectively contribute - even using the docker-box 
project which I understand quite well. Anything we can do to improve that 
situation will be very beneficial.

I have fewer opinions about the official CI story, hopefully some of the 
infrastructure team can comment more on that. I think that replacing the 
ansible roles with a docker setup can have some definite improvements and 
open up CI tasks to a larger pool of people (anyone that can edit docker 
files), but it'd come with maintaining the host that runs docker (cleaning 
up images, dealing with disk space issues, etc).


On Monday, 5 November 2018 01:20:03 UTC+11, Tom Forbes wrote:
>
> Hello all,
>
> I’ve been working on a docker-compose based alternative to django-box 
> (imaginatively named django-docker-box) over the last month and it 
> finally appears to be mostly complete. 
>
> For reference the tool is just a Dockerfile and a docker-compose 
> definition that is able to run a complete test matrix of every supported 
> Python and DB version. It’s as simple as docker-compose run sqlite. You 
> can see a full test run (excluding oracle) here: 
> https://travis-ci.com/orf/django-docker-box/builds/90167436
>
> Florian suggested I create a thread here to gather feedback and discuss 
> any potential future directions for the project, so here goes:
>
> Firstly I’d like to know if there is any support for moving this under the 
> Django project itself, maybe even as a replacement for django-box? I think 
> the setup is pretty quick compared to django-box and is more flexible in 
> terms of database version support as well as working with Oracle. I’d also 
> really like some help improving Oracle support if anyone has the time!
>
> Secondly is there any support for integrating this with our current 
> Jenkins setup? I think it would be pretty neat to have parity between what 
> runs on the CI and what we can run locally and have any improvements shared 
> between both. Perhaps a full matrix run (which right now is 66 different 
> environments) is out of the question but a smaller subset could be good?
>
> Thirdly, and this is a bit wild, but what about using this to reduce the 
> burden of running Jenkins by running the tests on a managed CI service like 
> Travis CI? We would likely still need Jenkins due to issues with Oracle and 
> running tests on Windows (unless 
> https://github.com/django/django/pull/10259 works with Docker!), but we 
> could offload some of the environments onto a third party service. Travis 
> gives large OS projects like Django increased concurrency limits on their 
> accounts so we could end up with pretty speedy test runs. Also with 
> docker-compose switching between CI services (including Jenkins) would be 
> very simple.
>
> The repo is here: https://github.com/orf/django-docker-box.
>
> Any feedback on these points or the project itself would be greatly 
> appreciated,
>
> Tom 
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/074f68c9-2199-4128-a37a-bfc1852f4806%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to