From 08396be619eee2e71c2f5f7aa27eea6f5ddf10ff Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Mon, 9 May 2016 22:14:46 +0300 Subject: Rename ImageRegistry to ContainerRegistry --- lib/container_registry/blob.rb | 51 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 lib/container_registry/blob.rb (limited to 'lib/container_registry/blob.rb') diff --git a/lib/container_registry/blob.rb b/lib/container_registry/blob.rb new file mode 100644 index 00000000000..e0d9923f217 --- /dev/null +++ b/lib/container_registry/blob.rb @@ -0,0 +1,51 @@ +module ContainerRegistry + class Blob + attr_reader :repository, :config + + def initialize(repository, config) + @repository = repository + @config = config || {} + end + + def valid? + digest.present? + end + + def digest + config['digest'] + end + + def type + config['mediaType'] + end + + def size + config['size'] + end + + def revision + digest.split(':')[1] + end + + def short_revision + revision[0..8] + end + + def client + @client ||= repository.client + end + + def delete + client.delete_blob(repository.name, digest) + end + + def data + return @data if defined?(@data) + @data ||= client.blob(repository.name, digest, type) + end + + def mount_to(to_repository) + client.repository_mount_blob(to_repository.name, digest, repository.name) + end + end +end -- cgit v1.2.1 From d7b91fb596e50411c0adb5aa8fb17341087f3f57 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Mon, 9 May 2016 22:27:06 +0300 Subject: Simplify Container Registry view implementation --- lib/container_registry/blob.rb | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib/container_registry/blob.rb') diff --git a/lib/container_registry/blob.rb b/lib/container_registry/blob.rb index e0d9923f217..16e3f853418 100644 --- a/lib/container_registry/blob.rb +++ b/lib/container_registry/blob.rb @@ -11,6 +11,10 @@ module ContainerRegistry digest.present? end + def path + "#{repository.path}@#{digest}" + end + def digest config['digest'] end -- cgit v1.2.1 From b5043d5d33ed2a213889dfe52c819addd0d847ef Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Mon, 9 May 2016 22:34:24 +0300 Subject: Fix review comments --- lib/container_registry/blob.rb | 1 - 1 file changed, 1 deletion(-) (limited to 'lib/container_registry/blob.rb') diff --git a/lib/container_registry/blob.rb b/lib/container_registry/blob.rb index 16e3f853418..d59792a383e 100644 --- a/lib/container_registry/blob.rb +++ b/lib/container_registry/blob.rb @@ -44,7 +44,6 @@ module ContainerRegistry end def data - return @data if defined?(@data) @data ||= client.blob(repository.name, digest, type) end -- cgit v1.2.1 From 24145592e804ffbe58a38b15095808919337d545 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Tue, 17 May 2016 13:20:11 -0500 Subject: Provide full test coverage to lib/container_registry API implementation --- lib/container_registry/blob.rb | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'lib/container_registry/blob.rb') diff --git a/lib/container_registry/blob.rb b/lib/container_registry/blob.rb index d59792a383e..4e20dc4f875 100644 --- a/lib/container_registry/blob.rb +++ b/lib/container_registry/blob.rb @@ -2,6 +2,8 @@ module ContainerRegistry class Blob attr_reader :repository, :config + delegate :registry, :client, to: :repository + def initialize(repository, config) @repository = repository @config = config || {} @@ -35,10 +37,6 @@ module ContainerRegistry revision[0..8] end - def client - @client ||= repository.client - end - def delete client.delete_blob(repository.name, digest) end @@ -46,9 +44,5 @@ module ContainerRegistry def data @data ||= client.blob(repository.name, digest, type) end - - def mount_to(to_repository) - client.repository_mount_blob(to_repository.name, digest, repository.name) - end end end -- cgit v1.2.1