Added ec2 observer, WIP
[plstackapi.git] / planetstack / ec2_observer / steps / sync_images.py
1 import os
2 import base64
3 from django.db.models import F, Q
4 from planetstack.config import Config
5 from observer.syncstep import SyncStep
6 from core.models.image import Image
7 from awslib import *
8
9 class SyncImages(OpenStackSyncStep):
10     provides=[Image]
11     requested_interval=3600
12
13     def fetch_pending(self):
14         images = Image.objects.all()
15         image_names = [image.name for image in images]
16        
17         new_images = []
18
19                 aws_images = aws_run('ec2 describe-images')
20
21         for aws_image in aws_images:
22             if aws_image not in image_names:
23                 image = Image(image_id=image_id,
24                               name=aws_image['name'],
25                               disk_format='XXX'
26                               container_format='XXX'
27                 new_images.append(image)   
28  
29         return new_images
30
31     def sync_record(self, image):
32         image.save()