Complete the diff generating functionality.

This commit is contained in:
yackob03 2013-10-18 14:31:14 -04:00
parent decb324411
commit a1164269be
6 changed files with 113 additions and 32 deletions

View file

@ -1,5 +1,6 @@
import logging
import stripe
import re
from flask import request, make_response, jsonify, abort
from flask.ext.login import login_required, current_user, logout_user
@ -7,6 +8,8 @@ from flask.ext.principal import identity_changed, AnonymousIdentity
from functools import wraps
from collections import defaultdict
import storage
from data import model
from app import app
from util.email import send_confirmation_email, send_recovery_email
@ -17,8 +20,9 @@ from auth.permissions import (ReadRepositoryPermission,
AdministerRepositoryPermission)
from endpoints import registry
from endpoints.web import common_login
import re
store = storage.load()
logger = logging.getLogger(__name__)
@ -366,11 +370,13 @@ def list_repository_images(namespace, repository):
def get_repository_changes(namespace, repository, image_id):
permission = ReadRepositoryPermission(namespace, repository)
if permission.can() or model.repository_is_public(namespace, repository):
return jsonify({
'added': [],
'changed': [],
'removed': []
})
diffs_path = store.image_file_diffs_path(namespace, repository, image_id)
try:
response_json = store.get_content(diffs_path)
return make_response(response_json)
except IOError:
abort(404)
abort(403)