RentMethod/celerytest

Old release on PyPI

Opened this issue · 6 comments

There are bugfixes in the repo not reflected in the latest version of celerytest available on PyPI (0.1.1, uploaded 2014-11-01).
Notably #3 could we get a minor version bump (to 0.1.2) and a new release?

#5 is also related. yes, new release, please!

pelme commented

Any chance of a new release any time soon? Anything we can do to help?

pelme commented

I can see on http://www.rentmethod.com/ that you seem to be closing down - if you are not interested in maintaining this project anymore I'd be happy to help out. My PyPI username is andreaspelme.

/cc @willembult

pelme commented

No worries. However, I found the approach taken by celerytest to be flawed and never managed to get it working.

My conclusion is that celery just does not behave good when started from a thread. Its not designed with that in mind and I ran into a number of issues. I cannot recall the exact problems I encountered, but they pointed me to believe that it is not a battle I want to have. Given enough time, I'm sure it is possible to work it out.

I instead started using celery in a subprocess and it has worked flawless without any problems. This of course requires the use of redis or something similar so that tasks can travel between the processes.

I use this for end-to-end tests and I am moving more into just starting different services in their own processes to have everything run as close to production as possible. I still run a Django live server but would like to change that to just start gunicorn instead. Ideally the test running process should not have the "real" application running to be able to mess with it IMO.

Since I no longer use this project, I don't have the time or motivation to maintain this anymore, sorry. Anyway, I hope my findings can be useful. :)

pelme commented

Right, I actually submitted issue #9 that describes my problem. It caused deadlocks and a lot of weirdness.

pelme commented

Agreed, that would certainly be nice. I can see it useful in other ways, and not being able to just run a worker in a thread is just...ugly. :)