devinstall 1.2.2 → 1.2.3

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: 4bb5beb672121e7653746c5657c2ab46bb7f92f0
4
- data.tar.gz: f228e14e80ba1a181df53709035afda7831b0b3b
3
+ metadata.gz: b0fdc7da0cef9c25edf168422feb0365b5319077
4
+ data.tar.gz: 9058195208de13470e301f22899d17ef6d26b68e
5
5
  SHA512:
6
- metadata.gz: ff9e44b19f0197ade70359e1b34167bd5d112bf456b59d5ec20d580665360b764ab56cb6784f4825f6e440b54792105fa8571f22c3a08e18e008c86864cd6b54
7
- data.tar.gz: 9000670caa9ab71c0240e950de774c0b416fc59002d7e7f5ac887511eb2531ef6aba8cf0fbba33c3b2d1cc3288a3e5fa7ff4d80b7fd6801ecb658609805a5fac
6
+ metadata.gz: 07e5ce63ab6e5afca185b39b299d4969a9e0875647f59610050baf25b2adae6972c209007c59b1064a7375e1e46a4929192f38489017faec2b14362ebf55dc19
7
+ data.tar.gz: 8b3f945bdcd09c6b6b31c8a39d31ebaefa74c4d860eb8f93107722609ef4302e6dc5c64a6e45dea31b9f2274134f54316fe09313cdf4ba5072007dbdb242d36e
data/.gitignore CHANGED
@@ -14,3 +14,5 @@ spec/reports
14
14
  test/tmp
15
15
  test/version_tmp
16
16
  tmp
17
+ pkg
18
+
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0.0
4
+ - 1.9.3
5
+
data/README.md CHANGED
@@ -1,12 +1,24 @@
1
- # Devinstall [![Gem Version][GV img]][Gem Version]
1
+ # Devinstall [![Gem Version][GV img]][Gem Version] [![Build status][Build img]][Build status] [![CodeClimate status][CodeClimate img]][CodeClimate status] [![Coverage Status][Coverage img]][Coverage Status]
2
2
 
3
3
  [Gem Version]: https://rubygems.org/gems/devinstall
4
4
 
5
5
  [GV img]: https://badge.fury.io/rb/devinstall.png
6
6
 
7
+ [Build status]: https://travis-ci.org/dragosboca/devinstall
8
+
9
+ [Build img]: https://travis-ci.org/dragosboca/devinstall.png
10
+
11
+ [CodeClimate Status]: https://codeclimate.com/github/dragosboca/devinstall
12
+
13
+ [CodeClimate img]: https://codeclimate.com/github/dragosboca/devinstall.png
14
+
15
+ [Coverage Status]: https://coveralls.io/r/dragosboca/devinstall?branch=master
16
+
17
+ [Coverage img]: https://coveralls.io/repos/dragosboca/devinstall/badge.png?branch=master
18
+
7
19
  This is a poor man automatic package builder / installer / deployer.
8
20
 
9
- The build happens on a remote machine (in the future on several remote machines by package type)
21
+ The build is done on a remote machine (in the future on several remote machines by package type)
10
22
  via external tools rsync and ssh.
11
23
 
12
24
  The packages are installed on the remote machines also via external rsync/scp and sshsudo
@@ -28,12 +40,12 @@ Or install it yourself as:
28
40
 
29
41
  ## Usage
30
42
 
31
- When you install the gem, the installer automaticaly install a program named pkg-tool.
43
+ When you install the gem, the installer automatically install a program named pkg-tool.
32
44
  All the actions can be done via this tool.
33
45
 
34
46
  The general command line syntax is:
35
47
 
36
- $ pkg_tool <action> [<package>] [--env <environment>] [--type <type>] [--config <config_file>]
48
+ $ pkg_tool <action> [<package>] [--env=<environment>] [--type=<type>] [--config=<config_file>]
37
49
 
38
50
  Where:
39
51
 
@@ -45,7 +57,7 @@ Builds the package on the `build/env/host` and copy the package file(s) back in
45
57
 
46
58
  install
47
59
 
48
- Build (using `build` command) and install the builded package on the `install/env/host`
60
+ Build (using `build` command) and install the built package on the `install/env/host`
49
61
 
50
62
  tests
51
63
 
@@ -59,11 +71,14 @@ Build the package, run the tests and upload thr file to the repo
59
71
 
60
72
  The command line switches are:
61
73
 
62
- --config: the config file (defaults to ./devinstall.yml)
74
+ --config=<config_file>
75
+ the config file (defaults to ./devinstall.yml)
63
76
 
64
- --env: the environment for the install or upload action
77
+ --env=<environment>
78
+ the environment for the install or upload action
65
79
 
66
- --type: only for –action build and specifies the package type (deb, rpm, tar.gz, arc....)
80
+ --type=<type>
81
+ the package type (`deb`, `rpm`, `tar.gz`, `arc`....)
67
82
 
68
83
  The switches override the defaults in the config file
69
84
 
@@ -83,14 +98,14 @@ This will build and upload package "devinstall" to repository for dev-rh environ
83
98
 
84
99
  In order to set all the variables and to define commands to do when building or installing you need a configuration file.
85
100
 
86
- The said config file have simple YAML structure and should define the folowing parameters:
101
+ The said config file have simple YAML structure and should define the following parameters:
87
102
 
88
103
  local:
89
104
  folder:
90
105
  temp:
91
106
 
92
107
  The folder where the source/prepackaged files are on the local (developer) machine (`:folder`) and the
93
- temporary folder where the generated packages will be downloades
108
+ temporary folder where the generated packages will be downloaded
94
109
 
95
110
  build:
96
111
  folder:
@@ -103,26 +118,26 @@ temporary folder where the generated packages will be downloades
103
118
 
104
119
  In order:
105
120
 
106
- - the folder where the sources should be copied (might be ignored by some provider_plugins)
121
+ - The folder where the sources should be copied (might be ignored by some provider_plugins)
107
122
 
108
123
  - The command used to build the package (like `make package` or `dpkg-buildpackage`)
109
124
 
110
125
  - The provider for the build machine (like the `local` machine or another machine
111
126
  accessible only by SSH - `ssh`
112
127
 
113
- - the package type ( `deb`ian, `rpm`, ...)
128
+ - The package type ( `deb`ian, `rpm`, ...)
114
129
 
115
- - the architecture (might be ignored by some package_plugins)
130
+ - The architecture (might be ignored by some package_plugins)
116
131
 
117
- - and the folder where the package builder will put the builded packages
132
+ - And the folder where the package builder will put the built packages
118
133
 
119
- - env define an environment (lyke `prod` or `QA`) for which the package will be built / installed
134
+ - `env` define an environment (like `prod` or `QA`) for which the package will be built / installed
120
135
 
121
136
  Unlike the other parameters env is optional
122
137
 
123
- install:
138
+ install: #<-- This is a section
124
139
  folder:
125
- command:
140
+ command: #<-- This is a parameter
126
141
  provider:
127
142
  type:
128
143
  arch:
@@ -141,7 +156,7 @@ Unlike the other parameters env is optional
141
156
 
142
157
  The parameters have the same meaning as for `build:`
143
158
  `repos` reffers to the package repository
144
- `tests` is optional (DON'T do this) and no tests will be performend if it's missing
159
+ `tests` is optional (DON'T do this) and no tests will be performed if it's missing
145
160
 
146
161
  defaults:
147
162
  type:
@@ -152,9 +167,9 @@ The default `type` and `env` if you don't use command-line switches
152
167
 
153
168
  The order in which the parameters will be searched is:
154
169
 
155
- - local
170
+ - local:
156
171
 
157
- Like:
172
+ Example:
158
173
 
159
174
  packages:
160
175
  <package_name>:
@@ -166,13 +181,13 @@ Like:
166
181
 
167
182
  - or global:
168
183
 
169
- Like
184
+ Like:
170
185
 
171
186
  <section>:
172
187
  <env>:
173
188
  <parameter>: value
174
189
 
175
- The parameters speciffied per package have priority over the global ones
190
+ The parameters specified per package have priority over the global ones
176
191
 
177
192
  In any case `env` is optional
178
193
 
@@ -183,3 +198,7 @@ In any case `env` is optional
183
198
  3. Commit your changes (`git commit -am 'Add some feature'`)
184
199
  4. Push to the branch (`git push origin my-new-feature`)
185
200
  5. Create new Pull Request
201
+
202
+
203
+ [![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/dboca/devinstall/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
204
+
data/Rakefile CHANGED
@@ -1,6 +1,8 @@
1
1
  require 'bundler/gem_tasks'
2
2
  require 'rspec/core/rake_task'
3
3
 
4
+ task :default => :spec
5
+
4
6
  desc 'Run all examples'
5
7
  RSpec::Core::RakeTask.new(:spec) do |t|
6
8
  t.pattern = './spec/spec_helper.rb'
@@ -14,3 +16,4 @@ task :coverage do
14
16
  SimpleCov.start 'gem'
15
17
  Rake::Task[:spec].execute
16
18
  end
19
+
data/devinstall.gemspec CHANGED
@@ -23,6 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency 'rspec'
24
24
  spec.add_development_dependency 'simplecov'
25
25
  spec.add_development_dependency 'simplecov-gem-adapter'
26
+ spec.add_development_dependency 'coveralls'
26
27
  spec.add_dependency 'getopt'
27
28
  spec.add_dependency 'commander'
28
29
  end
@@ -9,14 +9,12 @@ module Devinstall
9
9
  class UndeffError < RuntimeError;
10
10
  end
11
11
 
12
-
13
12
  class Package
14
13
  include Utils
15
14
 
16
- #noinspection RubyResolve
17
15
  def load_package_plugin(type)
18
- require "devinstall/pkg/pkg_#{type.to_s}"
19
- self.singleton_class.send(:include, Kernel.const_get("Pkg").const_get("#{type.to_s.capitalize}"))
16
+ require "devinstall/package/pkg_#{type.to_s}"
17
+ self.singleton_class.send(:include, Kernel.const_get('Pkg').const_get("#{type.to_s.capitalize}"))
20
18
  end
21
19
 
22
20
  def initialize(pkg, type, env)
@@ -48,7 +46,7 @@ module Devinstall
48
46
  end
49
47
  rescue KeyNotDefinedError => e
50
48
  puts e.message
51
- raise "Error uploading #{pkg}"
49
+ raise "Error building #{pkg}"
52
50
  end
53
51
 
54
52
  def install(pkg=@package, type=@type, env=@env)
@@ -61,7 +59,7 @@ module Devinstall
61
59
  end
62
60
  rescue KeyNotDefinedError => e
63
61
  puts e.message
64
- raise "Error uploading #{pkg}"
62
+ raise "Error installing #{pkg}"
65
63
  end
66
64
 
67
65
  def run_tests(pkg=@package, type=@type, env=@env)
@@ -79,7 +77,7 @@ module Devinstall
79
77
  tester.do_action
80
78
  rescue KeyNotDefinedError => e
81
79
  puts e.message
82
- raise "Error uploading #{pkg}"
80
+ raise "Error testing #{pkg}"
83
81
  end
84
82
 
85
83
  end
@@ -29,3 +29,4 @@ module Pkg
29
29
  end
30
30
  end
31
31
  end
32
+
File without changes
@@ -1,17 +1,23 @@
1
1
  module Devinstall
2
2
  class Provider
3
3
 
4
- #noinspection RubyResolve
4
+ def load_provider_plugin(provider)
5
+ require "devinstall/provider/provider_#{provider}"
6
+ self.singleton_class.send(:include, Kernel.const_get('Provider').const_get("#{provider.capitalize}"))
7
+ provider_settings=Kernel.const_get('Provider').const_get("#{provider.capitalize}")::SETTINGS
8
+ end
9
+
5
10
  def initialize(pkg, type, env, action=nil)
6
11
  providers={build: :build, install: :install, upload: :repos, run_tests: :tests}
7
12
  @pkg, @type, @env = (pkg.to_sym rescue pkg), (type.to_sym rescue type), (env.to_sym rescue env)
8
13
  @action = action || providers[caller_locations(1, 1)[0].label.to_sym] # that's realy stupid!
9
- provider = Settings.instance.send(action, :provider, pkg: pkg, type: type, env: env)
10
- require "devinstall/provider/provider_#{provider}"
11
- self.singleton_class.send(:include, Kernel.const_get('Provider').const_get("#{provider.capitalize}"))
12
- provider_settings=Kernel.const_get('Provider').const_get("#{provider.capitalize}")::SETTINGS
14
+ provider = Settings.instance.send(action, :provider, pkg: @pkg, type: @type, env: @env)
15
+ provider_settings = load_provider_plugin(provider)
13
16
  Settings.instance.register_provider(provider.to_sym, provider_settings)
14
- ObjectSpace.define_finalizer(self, Proc.new{Settings.instance.unregister_provider(provider)})
17
+ provider_init
18
+ ObjectSpace.define_finalizer(self, Proc.new{
19
+ provider_final
20
+ Settings.instance.unregister_provider(provider)})
15
21
  end
16
22
 
17
23
  def copy_sources # that's upload sources
@@ -51,3 +57,4 @@ module Devinstall
51
57
 
52
58
  end
53
59
  end
60
+
@@ -9,6 +9,10 @@ module Provider
9
9
  local: [:copy, :sudo],
10
10
  }
11
11
 
12
+ def provider_init;end
13
+
14
+ def profider_final;end
15
+
12
16
  def upload_sources(cfg, src, dst)
13
17
  config =Devinstall::Settings.instance
14
18
  copy_command=config.local[:copy]
@@ -13,6 +13,10 @@ module Provider
13
13
  ssh: [:ssh, :scp, :rsync, :sudo]
14
14
  }
15
15
 
16
+ def provider_init;end
17
+
18
+ def profider_final;end
19
+
16
20
  def upload_sources(cfg, src, dst)
17
21
  config =Devinstall::Settings.instance
18
22
  rsync = config.ssh(:rsync)
@@ -53,16 +53,17 @@ module Devinstall
53
53
  end ## Class Action
54
54
 
55
55
  def load! (filename)
56
- if FILES.include? filename
57
- true
58
- else
59
- FILES << filename
60
- data = YAML::load_file(filename).deep_symbolize
61
- merger = proc do |_, v1, v2|
62
- Hash === v1 && Hash === v2 ? v1.merge(v2, &merger) : v2
63
- end
64
- SETTINGS.merge! data, &merger
65
- end if File.exist?(File.expand_path(filename))
56
+ if FILES.include? filename
57
+ true
58
+ else
59
+ FILES << filename
60
+ data = YAML::load_file(filename).deep_symbolize
61
+ merger = proc do |_, v1, v2|
62
+ Hash === v1 && Hash === v2 ? v1.merge(v2, &merger) : v2
63
+ end
64
+ SETTINGS.merge! data, &merger
65
+ end if File.exist?(File.expand_path(filename))
66
+ FILES.include? filename
66
67
  end
67
68
 
68
69
  def method_missing (method, *args)
@@ -1,3 +1,3 @@
1
1
  module Devinstall
2
- VERSION = '1.2.2' # Working!
2
+ VERSION = '1.2.3' # Working!
3
3
  end
@@ -18,7 +18,7 @@ tests:
18
18
  local:
19
19
  # folder - source folder
20
20
  # temp - temporary folder
21
- folder: ~/projects/devinstall/spec/assets
21
+ folder: ./spec/assets
22
22
  temp: ~/.tmp
23
23
  build:
24
24
  # host - build machine
@@ -19,7 +19,7 @@ tests:
19
19
  local:
20
20
  # folder - source folder
21
21
  # temp - temporary folder
22
- folder: ~/projects/devinstall/spec/assets
22
+ folder: .//spec/assets
23
23
  temp: ~/.tmp
24
24
  build:
25
25
  # host - build machine
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,6 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+
1
4
  require 'devinstall/settings'
2
5
 
3
6
  def clean_config
@@ -1,61 +1,63 @@
1
1
  require 'rspec'
2
2
  require 'devinstall'
3
-
3
+ require 'pp'
4
4
  describe 'Settings' do
5
5
 
6
- it 'should load an existig file' do
7
- expect(@config.load!('./spec/assets/example_02.yml')).to be_true
8
- end
9
-
10
- it 'should not load an unexisting file' do
11
- expect(@config.load!('doc/unexisting.yml')).to be_false
12
- end
13
-
14
- it 'should load at init' do
15
- expect(@config).to be_an_instance_of(Devinstall::Settings)
16
- [:defaults, :local, :build, :install, :tests, :repos].each do |p|
17
- expect(@config.respond_to? p).to be_true
18
- end # all sections loaded!
19
- end
20
-
21
- it 'should have a method defaults' do
22
- expect(@config.respond_to? :defaults).to be_true
23
- end
24
-
25
- it 'the method "defaults" should have only one argument' do
26
- expect(@config.defaults(:type)).to eq 'deb'
27
- end
28
-
29
- it 'should instantiate a new "Action" when hashes are given' do
30
- expect(@config.build(type: 'deb', env: 'dev', pkg: @package)).to be_an_instance_of(Devinstall::Settings::Action)
31
- end
32
-
33
- it 'should instantiata a new "Action" when partial hashes are given' do
34
- expect(@config.build(pkg: @package)).to be_an_instance_of(Devinstall::Settings::Action)
35
- end
36
-
37
- it 'should raise "UnknownKeys" errors for unknown keys' do
38
- expect { @config.defaults :none }.to raise_error(Devinstall::UnknownKeyError)
39
- end
40
-
41
- it 'should raise "KeyNotDefinedError" errors for undefined keys' do
42
- expect { @config.tests(:provider, pkg: @package) }.to raise_error(Devinstall::KeyNotDefinedError)
43
- end
44
-
45
- it 'should produce a value if all arguments are valid' do
46
- expect(@config.build(:command, pkg: @package)).to eq('cd %f/%p && dpkg-buildpackage')
47
- end
48
-
49
- describe 'Action' do
50
- it 'should have a [] method' do
51
- rr=@config.build(pkg: @package, type: @type, env: @env)
52
- expect(rr[:target]).to eq('rs')
53
- end
54
-
55
- it 'should enumerate all defined values' do
56
- ar=[]
57
- @config.build(pkg: @package, type: @type, env: @env).each { |k, _| ar << k }
58
- expect(ar.sort == [:folder, :command, :provider, :type, :arch, :target].sort).to be_true
59
- end
60
- end
6
+ it 'should load an existig file' do
7
+ res=@config.load!('./spec/assets/example_02.yml')
8
+ expect(res).to be true
9
+ end
10
+
11
+ it 'should not load an unexisting file' do
12
+ res=@config.load!('doc/unexisting.yml')
13
+ expect(res).to be false
14
+ end
15
+
16
+ it 'should load at init' do
17
+ expect(@config).to be_an_instance_of(Devinstall::Settings)
18
+ [:defaults, :local, :build, :install, :tests, :repos].each do |p|
19
+ expect(@config.respond_to? p).to be true
20
+ end # all sections loaded!
21
+ end
22
+
23
+ it 'should have a method defaults' do
24
+ expect(@config.respond_to? :defaults).to be true
25
+ end
26
+
27
+ it 'the method "defaults" should have only one argument' do
28
+ expect(@config.defaults(:type)).to eq 'deb'
29
+ end
30
+
31
+ it 'should instantiate a new "Action" when hashes are given' do
32
+ expect(@config.build(type: 'deb', env: 'dev', pkg: @package)).to be_an_instance_of(Devinstall::Settings::Action)
33
+ end
34
+
35
+ it 'should instantiata a new "Action" when partial hashes are given' do
36
+ expect(@config.build(pkg: @package)).to be_an_instance_of(Devinstall::Settings::Action)
37
+ end
38
+
39
+ it 'should raise "UnknownKeys" errors for unknown keys' do
40
+ expect { @config.defaults :none }.to raise_error(Devinstall::UnknownKeyError)
41
+ end
42
+
43
+ it 'should raise "KeyNotDefinedError" errors for undefined keys' do
44
+ expect { @config.tests(:provider, pkg: @package) }.to raise_error(Devinstall::KeyNotDefinedError)
45
+ end
46
+
47
+ it 'should produce a value if all arguments are valid' do
48
+ expect(@config.build(:command, pkg: @package)).to eq('cd %f/%p && dpkg-buildpackage')
49
+ end
50
+
51
+ describe 'Action' do
52
+ it 'should have a [] method' do
53
+ rr=@config.build(pkg: @package, type: @type, env: @env)
54
+ expect(rr[:target]).to eq('rs')
55
+ end
56
+
57
+ it 'should enumerate all defined values' do
58
+ ar=[]
59
+ @config.build(pkg: @package, type: @type, env: @env).each { |k, _| ar << k }
60
+ expect(ar.sort == [:folder, :command, :provider, :type, :arch, :target].sort).to be true
61
+ end
62
+ end
61
63
  end
@@ -8,7 +8,7 @@ describe 'Packages' do
8
8
 
9
9
  it 'should include the correct file' do
10
10
  pk=Devinstall::Package.new(@package, @type, @env)
11
- expect(pk.singleton_class.include?(Pkg::Deb)).to be_true
11
+ expect(pk.singleton_class.include?(Pkg::Deb)).to be true
12
12
  end
13
13
 
14
14
  describe 'pkg_deb' do
@@ -16,29 +16,30 @@ describe 'Packages' do
16
16
  $dry=true
17
17
  pk =Devinstall::Package.new(@package, @type, @env)
18
18
  out = capture_output { pk.build(@package, @type, @env) }
19
- expect(out).to match /^Building/
19
+ expect(out).to match(/^Building/)
20
20
  end
21
21
 
22
22
  it 'should pretend to upload a package' do
23
23
  $dry=true
24
24
  pk =Devinstall::Package.new(@package, @type, @env)
25
25
  out = capture_output { pk.upload(@package, @type, @env) }
26
- expect(out).to match /^Upload/
26
+ expect(out).to match(/^Upload/)
27
27
  end
28
28
 
29
29
  it 'should pretend to test a package' do
30
30
  $dry=true
31
31
  pk =Devinstall::Package.new(@package, @type, @env)
32
32
  out = capture_output { pk.run_tests(@package, @type, @env) }
33
- expect(out).to match /^Running/
33
+ expect(out).to match(/^Running/)
34
34
  end
35
35
 
36
36
  it 'should pretend to install a package' do
37
37
  $dry=true
38
38
  pk =Devinstall::Package.new(@package, @type, @env)
39
39
  out = capture_output { pk.install(@package, @type, @env) }
40
- expect(out).to match /^Installing/
40
+ expect(out).to match(/^Installing/)
41
41
  end
42
-
43
42
  end
43
+
44
44
  end
45
+
@@ -9,6 +9,6 @@ describe 'Provider' do
9
9
 
10
10
  it 'should load the correct (Provider::Ssh) plugin' do
11
11
  provider = Devinstall::Provider.new(@package, @type, @env, @action)
12
- expect(provider.singleton_class.include? Provider::Ssh).to be_true
12
+ expect(provider.singleton_class.include? Provider::Ssh).to be true
13
13
  end
14
14
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devinstall
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dragos Boca
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-10 00:00:00.000000000 Z
11
+ date: 2014-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: coveralls
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: getopt
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -117,6 +131,7 @@ extensions: []
117
131
  extra_rdoc_files: []
118
132
  files:
119
133
  - .gitignore
134
+ - .travis.yml
120
135
  - Gemfile
121
136
  - LICENSE.txt
122
137
  - README
@@ -129,8 +144,8 @@ files:
129
144
  - lib/devinstall/cli.rb
130
145
  - lib/devinstall/deep_symbolize.rb
131
146
  - lib/devinstall/package.rb
132
- - lib/devinstall/pkg/pkg_deb.rb
133
- - lib/devinstall/pkg/pkg_rpm.rb
147
+ - lib/devinstall/package/pkg_deb.rb
148
+ - lib/devinstall/package/pkg_rpm.rb
134
149
  - lib/devinstall/provider.rb
135
150
  - lib/devinstall/provider/provider_local.rb
136
151
  - lib/devinstall/provider/provider_ssh.rb
@@ -164,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
164
179
  version: '0'
165
180
  requirements: []
166
181
  rubyforge_project:
167
- rubygems_version: 2.0.3
182
+ rubygems_version: 2.2.2
168
183
  signing_key:
169
184
  specification_version: 4
170
185
  summary: Copy the source files to a build host, build the packages and install builded