{"action":"created","issue":{"url":"https://api.github.com/repos/docker/distribution/issues/493","labels_url":"https://api.github.com/repos/docker/distribution/issues/493/labels{/name}","comments_url":"https://api.github.com/repos/docker/distribution/issues/493/comments","events_url":"https://api.github.com/repos/docker/distribution/issues/493/events","html_url":"https://github.com/docker/distribution/pull/493","id":73352554,"number":493,"title":"Storage support openstack swift","user":{"login":"nevermosby","id":1404747,"avatar_url":"https://avatars.githubusercontent.com/u/1404747?v=3","gravatar_id":"","url":"https://api.github.com/users/nevermosby","html_url":"https://github.com/nevermosby","followers_url":"https://api.github.com/users/nevermosby/followers","following_url":"https://api.github.com/users/nevermosby/following{/other_user}","gists_url":"https://api.github.com/users/nevermosby/gists{/gist_id}","starred_url":"https://api.github.com/users/nevermosby/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nevermosby/subscriptions","organizations_url":"https://api.github.com/users/nevermosby/orgs","repos_url":"https://api.github.com/users/nevermosby/repos","events_url":"https://api.github.com/users/nevermosby/events{/privacy}","received_events_url":"https://api.github.com/users/nevermosby/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/docker/distribution/labels/feature","name":"feature","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":35,"created_at":"2015-05-05T15:51:27Z","updated_at":"2015-05-28T21:05:01Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/docker/distribution/pulls/493","html_url":"https://github.com/docker/distribution/pull/493","diff_url":"https://github.com/docker/distribution/pull/493.diff","patch_url":"https://github.com/docker/distribution/pull/493.patch"},"body":"As a registry user, I can configure openstack swift as backend storage to push/pull images with the configured one."},"comment":{"url":"https://api.github.com/repos/docker/distribution/issues/comments/106599319","html_url":"https://github.com/docker/distribution/pull/493#issuecomment-106599319","issue_url":"https://api.github.com/repos/docker/distribution/issues/493","id":106599319,"user":{"login":"ahmetalpbalkan","id":159209,"avatar_url":"https://avatars.githubusercontent.com/u/159209?v=3","gravatar_id":"","url":"https://api.github.com/users/ahmetalpbalkan","html_url":"https://github.com/ahmetalpbalkan","followers_url":"https://api.github.com/users/ahmetalpbalkan/followers","following_url":"https://api.github.com/users/ahmetalpbalkan/following{/other_user}","gists_url":"https://api.github.com/users/ahmetalpbalkan/gists{/gist_id}","starred_url":"https://api.github.com/users/ahmetalpbalkan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ahmetalpbalkan/subscriptions","organizations_url":"https://api.github.com/users/ahmetalpbalkan/orgs","repos_url":"https://api.github.com/users/ahmetalpbalkan/repos","events_url":"https://api.github.com/users/ahmetalpbalkan/events{/privacy}","received_events_url":"https://api.github.com/users/ahmetalpbalkan/received_events","type":"User","site_admin":false},"created_at":"2015-05-28T21:05:01Z","updated_at":"2015-05-28T21:05:01Z","body":"My general comment: I see lots of inline logic in each method implementation of Driver. Most of that is like http headers, path manipulation logic to the `swiftPath`. I don't know much about Swift either, but it sounded to me like all these should be in a separate package (like we had in azure/s3 drivers) and driver implementation should make calls there where possible."}}