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 +9 -3
- data/Rakefile +26 -10
- data/lib/knife-solo/bootstraps/linux.rb +2 -0
- data/lib/knife-solo/info.rb +20 -1
- data/test/integration/amazon_linux_2012_09_bootstrap_test.rb +17 -0
- metadata +12 -6
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,7 +1,8 @@ | |
| 1 | 
            -
            # 0.2.0:  | 
| 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 | 
            -
            *  | 
| 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 | 
            -
            *  | 
| 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 | 
            -
             | 
| 21 | 
            -
             | 
| 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 | 
            -
             | 
| 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 ' | 
| 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  | 
| 77 | 
            -
            task :test =>  | 
| 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}
         | 
    
        data/lib/knife-solo/info.rb
    CHANGED
    
    | @@ -1,5 +1,24 @@ | |
| 1 1 | 
             
            module KnifeSolo
         | 
| 2 2 | 
             
              def self.version
         | 
| 3 | 
            -
                '0.2.0 | 
| 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 | 
| 5 | 
            -
              prerelease:  | 
| 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- | 
| 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:  | 
| 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
         |