Fix up the shared base images stuff.

This commit is contained in:
jakedt 2014-02-20 22:26:10 -05:00
parent 05dd00d495
commit a63a49caa1
5 changed files with 37 additions and 13 deletions

View file

@ -4,6 +4,7 @@ import urlparse
from flask import request, make_response, jsonify, session, Blueprint
from functools import wraps
from collections import OrderedDict
from data import model, userevent
from data.queue import webhook_queue
@ -183,15 +184,18 @@ def create_repository(namespace, repository):
repo = model.create_repository(namespace, repository,
get_authenticated_user())
new_repo_images = {desc['id']: desc for desc in image_descriptions}
added_images = dict(new_repo_images)
added_images = OrderedDict([(desc['id'], desc)
for desc in image_descriptions])
new_repo_images = dict(added_images)
for existing in model.get_repository_images(namespace, repository):
if existing.docker_image_id in new_repo_images:
added_images.pop(existing.docker_image_id)
username = get_authenticated_user() and get_authenticated_user().username
translations = {}
for image_description in added_images.values():
model.create_or_link_image(image_description['id'], repo, username)
model.create_or_link_image(image_description['id'], repo, username,
translations)
response = make_response('Created', 201)