From e0f07a5cc008b6b59695772b815430fdfa1e66bd Mon Sep 17 00:00:00 2001 From: Bryan McLellan Date: Mon, 18 May 2015 15:45:53 -0400 Subject: [PATCH] Test against Chef 11, and Chef 12+ in Travis + Appveyor Reverts 7aab00da90ad928a5a4cb123b4a300710f7e9005, and establishes patterns for CI to test against both Chef 11 and Chef 12. --- .gitignore | 1 + .travis.yml | 20 +++++++++++++++++--- Gemfile | 7 +------ appveyor.yml | 11 +++++++++++ ci.gemfile | 15 +++++++++++++++ knife-windows.gemspec | 2 -- 6 files changed, 45 insertions(+), 11 deletions(-) create mode 100644 ci.gemfile diff --git a/.gitignore b/.gitignore index 4040c6c1..ca44f725 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ *.gem .bundle Gemfile.lock +ci.gemfile.lock pkg/* diff --git a/.travis.yml b/.travis.yml index 16e6d977..522a4326 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,20 @@ +language: ruby + rvm: + - 1.9.3 - 2.0.0 - - 2.1.5 - - 2.2.0 -script: bundle exec rake spec +gemfile: ci.gemfile + +env: + - CHEF_VERSION="master" + - CHEF_VERSION="~> 12.0" + - CHEF_VERSION="< 12" + +matrix: + exclude: + - rvm: 1.9.3 + env: CHEF_VERSION="master" + - rvm: 1.9.3 + env: CHEF_VERSION="~> 12.0" + diff --git a/Gemfile b/Gemfile index 559eb436..4f108370 100644 --- a/Gemfile +++ b/Gemfile @@ -3,13 +3,8 @@ source "https://rubygems.org" # Specify your gem's dependencies in knife-windows.gemspec gemspec -# TODO: Remove this line when a new version of `winrm-s` is released which contains: -# -# https://github.com/chef/winrm-s/commit/d9a85d7c93ef4c24faaea760cdc58a3532d599e9 -# -gem 'winrm-s', github: 'chef/winrm-s' - group :test do + gem "chef" gem "rspec", '~> 3.0' gem "ruby-wmi" gem "httpclient" diff --git a/appveyor.yml b/appveyor.yml index 2052a957..13608ea6 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -5,9 +5,20 @@ platform: - x64 environment: + bundle_gemfile: ci.gemfile + matrix: - ruby_version: "193" + chef_version: "< 12" + + - ruby_version: "200" + chef_version: "< 12" + + - ruby_version: "200" + chef_version: "~> 12.0" + - ruby_version: "200" + chef_version: "master" clone_folder: c:\projects\knife-windows clone_depth: 1 diff --git a/ci.gemfile b/ci.gemfile new file mode 100644 index 00000000..7c77d4b0 --- /dev/null +++ b/ci.gemfile @@ -0,0 +1,15 @@ +source "https://rubygems.org" + +# Specify your gem's dependencies in knife-windows.gemspec +gemspec + +if ENV['CHEF_VERSION'] == 'master' + gem 'chef', github: 'chef/chef' +else + gem 'chef', ENV['CHEF_VERSION'] +end + +gem "rspec", '~> 3.0' +gem "ruby-wmi" +gem "httpclient" +gem 'rake' diff --git a/knife-windows.gemspec b/knife-windows.gemspec index 0fe5b178..e0b3da08 100644 --- a/knife-windows.gemspec +++ b/knife-windows.gemspec @@ -18,9 +18,7 @@ Gem::Specification.new do |s| s.add_dependency "winrm-s", "~> 0.3.0.dev.0" s.add_dependency "nokogiri" - s.add_development_dependency 'pry' - s.add_development_dependency 'chef', '< 12' s.files = `git ls-files`.split("\n") s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")