dock0 0.2.7 → 0.2.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 73b4835b9ed57f9bf95cd633942f685890f1ab5a
4
- data.tar.gz: e1f867542fcb962b38b5cf1e0b9659c94127e808
3
+ metadata.gz: fdf9bc6daeac4608d4be65112d2044b90aa1c414
4
+ data.tar.gz: 83d6b5a10c13ecec236aedfa7028302875b2343c
5
5
  SHA512:
6
- metadata.gz: d01821952328f27594e91b4e9c37b01ab34b1a10f5330707134043f52541459741114b93a2f851148249513dc036051fc7b9b7811cb1f83525ca3d5da474a46a
7
- data.tar.gz: c6e11da9a5ee70077456ca7791df70a1a0de2f7decce53955a08c54acf852508d4bb176eda3b1c88d0231fd318c6bd9d7cec43782ddeb1a1519993232a5149b7
6
+ metadata.gz: d5d5df6fe24aca80326639e2bf438cfec923d138c2dae7377cf1b863646eda64258d08f9b730aab01f570fd8e21d9d5fa186785312177394ca4c4df6232fa1c5
7
+ data.tar.gz: 740e0a20c9268dfba88035267dc7e382275248d00ec35f9b8c8f91a57a4dfdebc21c700ee1c8fedfc611f5de755936a45d032bb8259a5d0618a7ccb9965f5108
data/dock0.gemspec CHANGED
@@ -18,8 +18,9 @@ Gem::Specification.new do |s|
18
18
  s.executables = ['dock0']
19
19
 
20
20
  s.add_dependency 'mercenary', '~> 0.3.4'
21
+ s.add_dependency 'menagerie', '~> 0.0.1'
21
22
 
22
- s.add_development_dependency 'rubocop', '~> 0.27.0'
23
+ s.add_development_dependency 'rubocop', '~> 0.28.0'
23
24
  s.add_development_dependency 'rake', '~> 10.4.0'
24
25
  s.add_development_dependency 'coveralls', '~> 0.7.1'
25
26
  s.add_development_dependency 'rspec', '~> 3.1.0'
data/lib/dock0/install.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  require 'fileutils'
2
- require 'open-uri'
3
- require 'pathname'
2
+ require 'menagerie'
4
3
 
5
4
  module Dock0
6
5
  ##
@@ -12,10 +11,10 @@ module Dock0
12
11
  'templates' => './templates',
13
12
  'scripts' => './scripts',
14
13
  'build' => './build',
15
- 'base' => '/'
14
+ 'base' => '/',
16
15
  },
17
16
  'org' => 'dock0',
18
- 'artifacts' => []
17
+ 'artifacts' => [],
19
18
  }
20
19
  end
21
20
 
@@ -25,50 +24,17 @@ module Dock0
25
24
  "https://github.com/#{org}/#{name}/releases/download/#{version}/#{file}"
26
25
  end
27
26
 
28
- def build_path(artifact)
29
- "#{artifact['name']}/#{artifact['version']}/#{artifact['file']}"
30
- end
31
-
32
- def qualify_path(path)
33
- "#{@paths['build']}/#{@paths['base']}/#{path}"
34
- end
35
-
36
- def missing(path, artifact)
37
- return true unless File.exist? path
38
- puts "#{artifact['name']} (#{artifact['version']}) already loaded"
39
- end
40
-
41
- def download(artifact)
42
- url, path = artifact.values_at('url', 'full_path')
43
- return unless missing(path, artifact)
44
- puts "Downloading #{url} to #{path}"
45
- FileUtils.mkdir_p File.dirname(path)
46
- File.open(path, 'wb') do |fh|
47
- open(url, 'rb') { |request| fh.write request.read }
27
+ def artifacts
28
+ @config['artifacts'].map do |artifact|
29
+ artifact['url'] ||= build_url(artifact)
30
+ artifact
48
31
  end
49
32
  end
50
33
 
51
- def chmod(artifact)
52
- File.chmod(artifact['mode'], full_path)
53
- end
54
-
55
- def link(artifact)
56
- full_link_path = qualify_path artifact['link']
57
- FileUtils.mkdir_p File.dirname(full_link_path)
58
- relative_path = Pathname(artifact['full_path']).relative_path_from(
59
- Pathname(File.dirname(full_link_path))
60
- )
61
- FileUtils.ln_sf relative_path, full_link_path
62
- end
63
-
64
34
  def load_artifacts
65
- @config['artifacts'].each do |artifact|
66
- artifact['url'] ||= build_url(artifact)
67
- artifact['path'] ||= build_path(artifact)
68
- artifact['full_path'] = qualify_path artifact['path']
69
- download artifact
70
- chmod artifact if artifact['mode']
71
- link(artifact) if artifact['link']
35
+ Dir.chdir("#{@paths['build']}/#{@paths['base']}") do
36
+ menagerie = Menagerie.new @config['menagerie']
37
+ menagerie.create artifacts
72
38
  end
73
39
  end
74
40
 
data/lib/dock0/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  ##
2
2
  # Set the version (needed for Mercenary -v)
3
3
  module Dock0
4
- VERSION = '0.2.7'
4
+ VERSION = '0.2.8'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dock0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Les Aker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-09 00:00:00.000000000 Z
11
+ date: 2014-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mercenary
@@ -24,20 +24,34 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 0.3.4
27
+ - !ruby/object:Gem::Dependency
28
+ name: menagerie
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.0.1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.0.1
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rubocop
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: 0.27.0
47
+ version: 0.28.0
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: 0.27.0
54
+ version: 0.28.0
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: rake
43
57
  requirement: !ruby/object:Gem::Requirement