--- /dev/null
+media
+static
+var
RUN mkdir /opt/app
RUN mkdir /opt/src
+RUN mkdir /opt/src/Telemeta
-WORKDIR /opt/app
-
-ADD requirements.txt /opt/app/
-ADD requirements-dev.txt /opt/app/
-ADD setup.py /opt/app/
-ADD README.rst /opt/app/
-ADD telemeta /opt/app/
-
+COPY . /opt/src/Telemeta
+WORKDIR /opt/src/Telemeta
RUN pip install -r requirements.txt
RUN pip install -r requirements-dev.txt --src /opt/src
+RUN python setup.py develop
+
+WORKDIR /opt/app
EXPOSE 8000
--- /dev/null
+from __future__ import absolute_import
+import os, sys
+from celery import Celery
+from django.conf import settings
+
+sys.path.append(os.path.dirname('sandbox'))
+
+# set the default Django settings module for the 'celery' program.
+os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'settings')
+
+app = Celery('sandbox')
+
+# Using a string here means the worker will not have to
+# pickle the object when using Windows.
+app.config_from_object('django.conf:settings')
+app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
+# app.conf.update(
+# CELERY_RESULT_BACKEND='djcelery.backends.database:DatabaseBackend',
+# )
+
+@app.task(bind=True)
+def debug_task(self):
+ print('Request: {0!r}'.format(self.request))
# Starting celery worker with the --autoreload option will enable the worker to watch for file system changes
# This is an experimental feature intended for use in development only
# see http://celery.readthedocs.org/en/latest/userguide/workers.html#autoreloading
-$manage celery worker --autoreload -A celery_app
+python $manage celery worker --autoreload -A celery_app
#!/bin/sh
# paths
-
-
app='/opt/app'
manage=$app'/manage.py'
wsgi=$app'/wsgi.py'
+++ /dev/null
-from __future__ import absolute_import
-
-import os
-
-from celery import Celery
-
-from django.conf import settings
-
-# set the default Django settings module for the 'celery' program.
-os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'settings')
-
-app = Celery('sandbox')
-
-# Using a string here means the worker will not have to
-# pickle the object when using Windows.
-app.config_from_object('django.conf:settings')
-app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
-# app.conf.update(
-# CELERY_RESULT_BACKEND='djcelery.backends.database:DatabaseBackend',
-# )
-
-@app.task(bind=True)
-def debug_task(self):
- print('Request: {0!r}'.format(self.request))
import os
import sys
-here = os.path.dirname(__file__)
-sys.path.append(here)
+sys.path.append(os.path.dirname('sandbox'))
# os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
#
broker:
image: rabbitmq:3-management
- ports:
- - "15672:15672"
search:
image: elasticsearch:1
build: .
volumes:
- ./app/:/opt/app
+ - ./:/opt/src/Telemeta
volumes_from:
- media
command: /bin/sh deploy/start_app.sh
return code.lower()
def project_dir():
- import settings as settings_mod
+ try:
+ import sandbox.settings as settings_mod
+ except:
+ import settings as settings_mod
if '__init__.py' in settings_mod.__file__:
p = os.path.dirname(settings_mod.__file__)
else:
class MalformedPagePath(Exception):
pass
-