]> git.parisson.com Git - mezzo.git/commitdiff
Add eve db, continue sync script
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Tue, 11 Oct 2016 15:40:18 +0000 (17:40 +0200)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Tue, 11 Oct 2016 15:40:18 +0000 (17:40 +0200)
app/local_settings.py
app/organization/agenda/management/commands/organization-sync-eve-events.py
docker-compose.yml
scripts/restore_db_eve.sh

index c4411a367508efd62e59187f013335371860477f..6c645bad3f22fe49ca840a5013a8c5fac7c6b51b 100644 (file)
@@ -22,9 +22,9 @@ DATABASES = {
     'eve': {
         'ENGINE': 'django.db.backends.postgresql_psycopg2',
         'NAME': 'eve',
-        'USER': 'django',
+        'USER': 'eve',
         'PASSWORD': "q2nqzt0WGnwWé,256",
-        'HOST': 'eve',
+        'HOST': 'evedb',
         'PORT': '5432',
     },
     'prestashop': {
index 070cadbd068c06b7efbb51c67322e1811c0c5c3e..fa9c80d1b5deef929ae4efd5bbe3b752ca95fb3d 100644 (file)
@@ -25,15 +25,15 @@ class Command(BaseCommand):
     default_user = User.objects.get(username='admin')
 
     def cleanup(self):
-        for event in ma_models.Event.objects.all():
-            event.delete()
-        for location in ma_models.EventLocation.objects.all():
-            location.delete()
+        for event in ma_models.Event.objects.all():
+            event.delete()
+        for location in ma_models.EventLocation.objects.all():
+            location.delete()
         for event_price in ma_models.EventPrice.objects.all():
             event_price.delete()
 
     def handle(self, *args, **kwargs):
-        self.cleanup()
+        self.cleanup()
         meta_event_name = kwargs.get('meta_event')
         meta_trans_all = eve_models.MetaEventTranslation.objects.all()
         for meta_trans in meta_trans_all:
@@ -44,6 +44,8 @@ class Command(BaseCommand):
             event_trans = eve_models.EventTranslation.objects.filter(id=eve_event, lang='fr')[0]
             manifestations = eve_event.manifestations.all().order_by('happens_at')
             first = True
+            eve_locations = []
+
             for manifestation in manifestations:
                 events = ma_models.Event.objects.filter(external_id=manifestation.id)
                 if not events:
@@ -67,8 +69,9 @@ class Command(BaseCommand):
                 location.save()
                 event.location = location
                 event.save()
-                keyword, _ = Keyword.objects.get_or_create(title=eve_event.event_category.name)
-                event.keywords.add(AssignedKeyword(keyword=keyword), bulk=False)
+
+                # keyword, c = Keyword.objects.get_or_create(title=eve_event.event_category.name)
+                # event.keywords.add(AssignedKeyword(keyword=keyword), bulk=False)
 
                 eve_prices = eve_models.PriceManifestation.objects.filter(manifestation=manifestation)
                 for price in eve_prices:
@@ -77,10 +80,14 @@ class Command(BaseCommand):
                         if not event_price in event.prices.all():
                             event.prices.add(event_price)
 
-                if not first:
+                if not first and not manifestation.location in eve_locations:
                     event.parent = parent
                 else:
                     parent = event
                     first = False
 
+                event.status = 1
                 event.save()
+
+                if not manifestation.location in eve_locations:
+                    eve_locations.append(manifestation.location)
index 5be19e68ba73c3f91207cf2697aea005fac6b3ee..8e59f8cd4e1438429f011546b9228f33bdd95c2e 100644 (file)
@@ -44,13 +44,25 @@ prestadb:
     - data
   volumes:
     - ./scripts/:/srv/scripts
-    - ./data/mysql/:/var/lib/mysql
+    - ./data/external/prestashop/mysql/:/var/lib/mysql
   environment:
     - MYSQL_ROOT_PASSWORD=mysecretpassword
     - MYSQL_DATABASE=ircam_shops
     - MYSQL_USER=ircam_shops
     - MYSQL_PASSWORD=pUmt97e4MgR9EP4knyWea0n
 
+evedb:
+  image: postgres
+  volumes_from:
+    - data
+  volumes:
+    - ./scripts/:/srv/scripts
+    - ./data/external/eve/postgresql/data/:/var/lib/postgresql/data
+  environment:
+    - POSTGRES_USER=eve
+    - POSTGRES_DB=eve
+    - POSTGRES_PASSWORD=q2nqzt0WGnwWé,256
+
 app:
   build: .
   command: /bin/bash scripts/app.sh
@@ -58,6 +70,7 @@ app:
     - ./app/:/srv/app
     - ./lib/grappelli-safe/:/srv/lib/grappelli-safe
     - ./lib/mezzanine-agenda/:/srv/lib/mezzanine-agenda
+    - ./lib/mezzanine/:/srv/lib/mezzanine
     - ./lib/django-eve/:/srv/lib/django-eve
     - ./lib/django-prestashop/:/srv/lib/django-prestashop
   volumes_from:
@@ -67,6 +80,7 @@ app:
   links:
     - db
     - prestadb
+    - evedb
   environment:
    - DEBUG=False
 
index 03baf9b2bba4edebc4f8c6fe60021fc9c525ba52..91ba7b634d208507013871227676f01fb30e0b19 100755 (executable)
@@ -1,14 +1,14 @@
 #!/bin/bash
 
-export PGPASSWORD="HmazS2frT"
+export PGPASSWORD="q2nqzt0WGnwWé,256"
 
-db_exists=`psql -hpgdb -Ueve -lqt  | cut -d \| -f 1 | grep -w eve | wc -l`
+db_exists=`psql -hevedb -Ueve -lqt  | cut -d \| -f 1 | grep -w eve | wc -l`
 
 #if [ ! $db_exists == 0 ]; then
 #    psql -hpgdb -Ueve  -c 'drop database eve'
 #fi
 
-psql -hpgdb -Ueve -c 'create role eve'
-psql -hpgdb -Ueve -c 'create role django'
-#psql -hpgdb -Ueve -c 'create database eve'
-gunzip -c /srv/backup/eve.sql.gz | psql -hpgdb -Ueve -q eve
+psql -hevedb -Ueve -c 'create role eve'
+psql -hevedb -Ueve -c 'create role django'
+#psql -hevedb -Ueve -c 'create database eve'
+gunzip -c /srv/backup/eve.sql.gz | psql -hevedb -Ueve -q eve