docker_registry2 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Makefile +14 -0
- data/get-gem-name.rb +6 -0
- data/lib/registry/registry.rb +14 -1
- data/lib/registry/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 659ecf4ef40131454d487d83c3f6592020b69f04
|
4
|
+
data.tar.gz: 64c62b6dc3ac56dcd49e7290dd519a6c56ba9836
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f436b0a221871c034a9a7fe785d00ebb24011c12e2adeec782786676f819ef61356ab0f1440b3b98f0f01e516b31e90a71532cc672a488b6e12f3f243481fdde
|
7
|
+
data.tar.gz: 0e8eca4a3438bb7fda0608b7920b6b76bc2090928b81c13589adb2f1031de98d11c8c15136fb1cad6028a23987be66ecf56cd71884feed755f94c981602fb737
|
data/Makefile
ADDED
data/get-gem-name.rb
ADDED
data/lib/registry/registry.rb
CHANGED
@@ -20,6 +20,10 @@ class DockerRegistry2::Registry
|
|
20
20
|
return doreq "get", url
|
21
21
|
end
|
22
22
|
|
23
|
+
def dodelete(url)
|
24
|
+
return doreq "delete", url
|
25
|
+
end
|
26
|
+
|
23
27
|
def dohead(url)
|
24
28
|
return doreq "head", url
|
25
29
|
end
|
@@ -71,13 +75,20 @@ class DockerRegistry2::Registry
|
|
71
75
|
JSON.parse doget "/v2/#{repo}/manifests/#{tag}"
|
72
76
|
end
|
73
77
|
|
78
|
+
def rmtag(image, tag)
|
79
|
+
# TODO: Need full response back. Rewrite other manifests() calls without JSON?
|
80
|
+
reference = doget("/v2/#{image}/manifests/#{tag}").headers[:docker_content_digest]
|
81
|
+
|
82
|
+
return dodelete("/v2/#{image}/manifests/#{reference}").code
|
83
|
+
end
|
84
|
+
|
74
85
|
def pull(repo,tag,dir)
|
75
86
|
# make sure the directory exists
|
76
87
|
FileUtils::mkdir_p dir
|
77
88
|
# get the manifest
|
78
89
|
m = manifest repo,tag
|
79
90
|
# pull each of the layers
|
80
|
-
|
91
|
+
m["layers"].each { |layer|
|
81
92
|
# make sure the layer does not exist first
|
82
93
|
if ! File.file? "#{dir}/#{layer.blobSum}" then
|
83
94
|
doget "/v2/#{repo}/blobs/#{layer.blobSum}" "#{dir}/#{layer.blobSum}"
|
@@ -185,6 +196,8 @@ class DockerRegistry2::Registry
|
|
185
196
|
uri.user = @user if defined? @user
|
186
197
|
uri.password = @password if defined? @password
|
187
198
|
begin
|
199
|
+
# FIXME: This should be set with the rest of the headers
|
200
|
+
# target[:params]['scope'] = 'repository'
|
188
201
|
response = RestClient.get uri.to_s, {params: target[:params]}
|
189
202
|
rescue RestClient::Unauthorized
|
190
203
|
# bad authentication
|
data/lib/registry/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: docker_registry2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Avi Deitcher https://github.com/deitch
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2017-
|
13
|
+
date: 2017-05-11 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: bundler
|
@@ -76,8 +76,10 @@ extra_rdoc_files: []
|
|
76
76
|
files:
|
77
77
|
- ".gitignore"
|
78
78
|
- Gemfile
|
79
|
+
- Makefile
|
79
80
|
- README.md
|
80
81
|
- docker_registry2.gemspec
|
82
|
+
- get-gem-name.rb
|
81
83
|
- lib/docker_registry2.rb
|
82
84
|
- lib/registry/exceptions.rb
|
83
85
|
- lib/registry/registry.rb
|