Unable to integrate Celery upon windows using Kallithea 0.2.1 on Win2k12

Todd Morgan toddlmorgan at gmail.com
Sun Apr 19 09:11:56 EDT 2015


Hi,
 I'm trying to set up a new Kallithea 0.2.1 installation upon a Win2k12 box
(clean - nothing else installed).

I am able to get Kallithea working AOK without Celery and RabbitMQ - but I
have a large number of repos (100+) to support so I need the scaling Celery
provides.

When I enable celery I get a message in the celeryD log indicating that "*Task
of kind 'kallithea.lib.celerylib.tasks.create_repo' is not registered,
please make sure it's imported."*

[2015-04-19 22:13:48,183: DEBUG/MainProcess] Consumer: Ready to accept
tasks!
[2015-04-19 22:20:14,302: INFO/MainProcess] Got task from broker:
kallithea.lib.celerylib.tasks.create_repo[65d4b6a4-8ef8-41d0-9f75-32479394e32e]
[2015-04-19 22:20:14,332: DEBUG/MainProcess] Mediator: Running callback for
task:
kallithea.lib.celerylib.tasks.create_repo[65d4b6a4-8ef8-41d0-9f75-32479394e32e]
[2015-04-19 22:20:14,348: DEBUG/MainProcess] TaskPool: Apply <function
execute_and_trace at 0x00000000053A6E48>
(args:('kallithea.lib.celerylib.tasks.create_repo',
'65d4b6a4-8ef8-41d0-9f75-32479394e32e', ({'repo_type': u'git', 'repo_name':
u'automation', 'repo_enable_downloads': False, '_authentication_token':
u'85022200563145360862159926964161116912', 'repo_copy_permissions': False,
'repo_enable_locking': False, 'repo_landing_rev': u'rev:tip', 'group_name':
'', 'clone_uri': u'', 'add': u'Add', 'repo_name_full': u'automation',
'repo_group': None, 'group_path': '', 'repo_private': False,
'repo_enable_statistics': False, 'repo_description': u'
http://littleone:8088/scm/git/automation.git'}, 2), {}) kwargs:{'hostname':
'WIN-PF6LKO8R2ST', 'request': {'retries': 0, 'loglevel': 10,
'delivery_info': {'consumer_tag': u'2', 'routing_key': u'celery',
'exchange': u'celery'}, 'is_eager': False, 'taskset': None, 'logfile':
'celeryd.log', 'id': '65d4b6a4-8ef8-41d0-9f75-32479394e32e'}})
[2015-04-19 22:20:14,380: DEBUG/MainProcess] Task accepted:
kallithea.lib.celerylib.tasks.create_repo[65d4b6a4-8ef8-41d0-9f75-32479394e32e]
pid:2884
[2015-04-19 22:20:14,473: ERROR/MainProcess] Task
kallithea.lib.celerylib.tasks.create_repo[65d4b6a4-8ef8-41d0-9f75-32479394e32e]
raised exception: *Task of kind 'kallithea.lib.celerylib.tasks.create_repo'
is not registered, please make sure it's imported.*
NotRegistered: 'kallithea.lib.celerylib.tasks.create_repo'
None

I have followed the instructions here
http://kallithea.readthedocs.org/en/latest/installation_win.html

My installation includes:

   - The win2k12 box is clean (VM) setup for testing this - all patches -
   UAC disabled
   - Python 2.7.9 (python-2.7.9.amd64.msi) + pywin32-219.win-amd64-py2.7.exe
   - Postgres support ( I had to add this pip install psycopg2 to get the
   postgres support)
   - I installed the latest version of Erlang otp_win64_17.5.exe
   - Latest version of Postgres (postgresql-9.4.1-3-windows-x64.exe)
   - Latest version of Rabbit rabbitmq-server-3.5.1.exe


I've attempted to add the Celery support by following the additional
sections from here https://gist.github.com/UnderGreen/bb4800baa48ce7b1340c
(which is
Setting up Kallithea on Ubuntu Server 12.04)

The closest that I have found to this experience is a similar problem on
RhodeCode
https://rhodecode.tenderapp.com/help/discussions/problems/8006-can-not-add-git-repository-after-upgrade-on-225


Where marcin states
"...
But if you want to keep using celery i think you need to make sure when you
use paster, it needs to be in the same virtualenv that rhodecode, so you
should execute paster by it's full path somewhere in the:
/root/rhodecode/data/
"

I want to keep celery so I ignored the use_celery=false suggestion


The post suggests it's not including the relevant "virtual environment" in
the path (I'm a java dev by profession rather than a Python dev) so I'm not
sure if that's right ...

I did try using a fully qualified path for the Paster.exe

(Env) C:\Kallithea\Bin>C:\Kallithea\Env\Scripts\paster.exe celeryd
production.ini &
(Env) C:\Kallithea\Bin>C:\Kallithea\Env\Scripts\paster.exe serve
production.ini



To prove it all works AOK (excluding paster) I merely cloned the repos to
the repo folder and changed the production.ini file

initial_repo_scan = true

To force it to load the new repos on the next startup and it worked AOK
All the recent changes show up as well as the message within the repo
"Unnamed repository; edit this file 'description' to name the repository."


Given that the machine is solely dedicated to this purpose I also tried NOT
using virtualenv - that way it would be impossible??? to get an incorrect
context for Celeryd (as there would only be 1 python) and the result was
the same - celery task not registered

Any help you can provide would be appreciated.

At this point Linux is not an option either as I have a windows server to
use for this activity.

Thanks
     Todd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sfconservancy.org/pipermail/kallithea-general/attachments/20150419/5729f040/attachment.html>


More information about the kallithea-general mailing list