knife-solo 0.2.0.pre1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG.md CHANGED
@@ -1,7 +1,8 @@
1
- # 0.2.0: _Not released yet_
1
+ # 0.2.0: February 12, 2013
2
2
 
3
3
  ## Changes and new features
4
4
 
5
+ * Post-install hook to remind people about removing old gems (#152)
5
6
  * Support Chef 11 (#183)
6
7
  * Rename Cook command's `--skip-chef-check` option to `--no-chef-check (#162)
7
8
  * Rename `--ssh-identity` option to `--identity-file` (#178)
@@ -9,6 +10,7 @@
9
10
  * Add `--no-librarian` option to bootstrap and cook commands (#180)
10
11
  * Generate Cheffile and .gitignore on `knife solo init --librarian` (#182)
11
12
  * Windows client compatibility (#156, #91)
13
+ * Support Amazon Linux (#181)
12
14
  * Support unknown/unreleased Debian versions by using the
13
15
  gem installer (#172)
14
16
  * Drop support for Debian 5.0 Lenny (#172)
@@ -21,13 +23,16 @@
21
23
  * Fix compatibility with Ruby 1.8.7 on work station (#170)
22
24
  * Fix Chef version checking if sudo promts password (#190)
23
25
  * Fix compatibility (net-ssh dependency) with Chef 10.20.0 and 11.2.0 (#188)
24
- * Other fixes: #166, #168, #173
26
+ * Fail CI if manifest isn't updated (#195)
27
+ * Better unit tests around solo cook
28
+ * Other fixes: #166, #168, #173, #194
25
29
 
26
30
  ## Thanks to our contributors!
27
31
 
28
32
  * [Russell Cardullo][russellcardullo]
29
- * "[tknerr][]"
33
+ * [tknerr][tknerr]
30
34
  * [Shaun Dern][smdern]
35
+ * [Mike Bain][TheAlphaTester]
31
36
 
32
37
  # 0.1.0: January 12, 2013
33
38
 
@@ -233,6 +238,7 @@ And a special thanks to [Teemu Matilainen][tmatilai] who is now on the list of d
233
238
  [Frozenproduce]: https://github.com/Frozenproduce
234
239
  [Motiejus]: https://github.com/Motiejus
235
240
  [Nix-wie-weg]: https://github.com/Nix-wie-weg
241
+ [TheAlphaTester]:https://github.com/TheAlphaTester
236
242
  [TylerRick]: https://github.com/TylerRick
237
243
  [aaronjensen]: https://github.com/aaronjensen
238
244
  [amoslanka]: https://github.com/amoslanka
data/Rakefile CHANGED
@@ -1,5 +1,6 @@
1
1
  require 'bundler/gem_tasks'
2
2
  require 'rake/testtask'
3
+ require File.join(File.dirname(__FILE__), 'lib', 'knife-solo', 'info')
3
4
 
4
5
  MANIFEST_IGNORES = %w[
5
6
  .travis.yml
@@ -13,15 +14,26 @@ MANIFEST_IGNORES = %w[
13
14
  script/test
14
15
  ]
15
16
 
16
- desc 'Updates Manifest.txt with a list of files from git'
17
- task :manifest do
18
- git_files = `git ls-files`.split("\n")
19
17
 
20
- File.open('Manifest.txt', 'w') do |f|
21
- f.puts((git_files - MANIFEST_IGNORES).join("\n"))
18
+ namespace :manifest do
19
+ desc 'Checks for outstanding changes to the manifest'
20
+ task :verify => :update do
21
+ changes = `git status --porcelain Manifest.txt`
22
+ raise "Manifest has not been updated" unless changes.empty?
23
+ end
24
+
25
+ desc 'Updates Manifest.txt with a list of files from git'
26
+ task :update do
27
+ git_files = `git ls-files`.split("\n")
28
+
29
+ File.open('Manifest.txt', 'w') do |f|
30
+ f.puts((git_files - MANIFEST_IGNORES).join("\n"))
31
+ end
22
32
  end
23
33
  end
24
- task :release => :manifest
34
+
35
+ desc 'Alias to manifest:update'
36
+ task :manifest => 'manifest:update'
25
37
 
26
38
  # Returns the parsed RDoc for a single file as HTML
27
39
  # Somewhat gnarly, but does the job.
@@ -51,12 +63,11 @@ task 'gh-pages' do
51
63
  end
52
64
  rev = `git rev-parse HEAD`[0..7]
53
65
  Dir.chdir(clone) do
54
- sh "git commit --allow-empty -m 'Updated index from README.rdoc rev #{rev}' index.html"
66
+ sh "git commit --allow-empty -m 'Update index for v#{KnifeSolo.version} from README.rdoc rev #{rev}' index.html"
55
67
  sh "git push origin gh-pages"
56
68
  end
57
69
  end
58
70
  end
59
- task :release => 'gh-pages'
60
71
 
61
72
  namespace :test do
62
73
  Rake::TestTask.new(:integration) do |t|
@@ -73,6 +84,11 @@ namespace :test do
73
84
  task :all => [:units, :integration]
74
85
  end
75
86
 
76
- desc "Alias for test:units"
77
- task :test => ['test:units']
87
+ desc 'Alias for test:units'
88
+ task :test => 'test:units'
89
+
78
90
  task :default => :test
91
+ task :default => 'manifest:verify'
92
+
93
+ task :release => :manifest
94
+ task :release => 'gh-pages' unless KnifeSolo.prerelease?
@@ -82,6 +82,8 @@ module KnifeSolo::Bootstraps
82
82
  {:type => "yum_omnibus", :version => "RHEL5"}
83
83
  when %r{CentOS.*? 6}
84
84
  {:type => "yum_omnibus", :version => "RHEL6"}
85
+ when %r{Amazon Linux}
86
+ {:type => "yum_omnibus", :version => "RHEL6"}
85
87
  when %r{Red Hat Enterprise.*? 5}
86
88
  {:type => "yum_omnibus", :version => "RHEL5"}
87
89
  when %r{Red Hat Enterprise.*? 6}
@@ -1,5 +1,24 @@
1
1
  module KnifeSolo
2
2
  def self.version
3
- '0.2.0.pre1'
3
+ '0.2.0'
4
+ end
5
+
6
+ def self.post_install_message
7
+ <<-TXT.gsub(/^ {6}/, '').strip
8
+ Thanks for installing knife-solo!
9
+
10
+ If you run into any issues please let us know at:
11
+ https://github.com/matschaffer/knife-solo/issues
12
+
13
+ If you are upgrading knife-solo please uninstall any old versions by
14
+ running `gem clean knife-solo` to avoid any errors.
15
+
16
+ See http://bit.ly/CHEF-3255 for more information on the knife bug
17
+ that causes this.
18
+ TXT
19
+ end
20
+
21
+ def self.prerelease?
22
+ Gem::Version.new(self.version).prerelease?
4
23
  end
5
24
  end
@@ -0,0 +1,17 @@
1
+ require 'integration_helper'
2
+
3
+ class AmazonLinux2012_09BootstrapTest < IntegrationTest
4
+ def user
5
+ "ec2-user"
6
+ end
7
+
8
+ def image_id
9
+ "ami-1624987f"
10
+ end
11
+
12
+ def prepare_server
13
+ # Do nothing as `solo bootstrap` will do everything
14
+ end
15
+
16
+ include Apache2Bootstrap
17
+ end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knife-solo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0.pre1
5
- prerelease: 6
4
+ version: 0.2.0
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Mat Schaffer
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-08 00:00:00.000000000 Z
12
+ date: 2013-02-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -214,6 +214,7 @@ files:
214
214
  - test/bootstraps_test.rb
215
215
  - test/deprecated_command_test.rb
216
216
  - test/gitignore_test.rb
217
+ - test/integration/amazon_linux_2012_09_bootstrap_test.rb
217
218
  - test/integration/cases/apache2_bootstrap.rb
218
219
  - test/integration/cases/apache2_cook.rb
219
220
  - test/integration/cases/empty_cook.rb
@@ -255,7 +256,11 @@ files:
255
256
  - test/test_helper.rb
256
257
  homepage: http://matschaffer.github.com/knife-solo/
257
258
  licenses: []
258
- post_install_message:
259
+ post_install_message: ! "Thanks for installing knife-solo!\n\nIf you run into any
260
+ issues please let us know at:\n https://github.com/matschaffer/knife-solo/issues\n\nIf
261
+ you are upgrading knife-solo please uninstall any old versions by\nrunning `gem
262
+ clean knife-solo` to avoid any errors.\n\nSee http://bit.ly/CHEF-3255 for more information
263
+ on the knife bug\nthat causes this."
259
264
  rdoc_options: []
260
265
  require_paths:
261
266
  - lib
@@ -268,9 +273,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
268
273
  required_rubygems_version: !ruby/object:Gem::Requirement
269
274
  none: false
270
275
  requirements:
271
- - - ! '>'
276
+ - - ! '>='
272
277
  - !ruby/object:Gem::Version
273
- version: 1.3.1
278
+ version: '0'
274
279
  requirements: []
275
280
  rubyforge_project:
276
281
  rubygems_version: 1.8.24
@@ -281,6 +286,7 @@ test_files:
281
286
  - test/bootstraps_test.rb
282
287
  - test/deprecated_command_test.rb
283
288
  - test/gitignore_test.rb
289
+ - test/integration/amazon_linux_2012_09_bootstrap_test.rb
284
290
  - test/integration/cases/apache2_bootstrap.rb
285
291
  - test/integration/cases/apache2_cook.rb
286
292
  - test/integration/cases/empty_cook.rb