diff --git a/Gemfile b/Gemfile index 1299374b..31c90b58 100644 --- a/Gemfile +++ b/Gemfile @@ -1,3 +1,7 @@ +## THIS GEMFILE IS DEPRECATED AND WILL BE REMOVED AFTER THE NEXT RELEASE +## THERE WON'T BE ANY UPDATES TO THIS FILE DURING THIS RELEASE CYCLE +## WE SWITCHED TO CHEFDK AS THE BUNDLE FOR THE NEEDED GEMS + source 'https://rubygems.org' gem 'chef', '~> 11.18.6' diff --git a/README.md b/README.md index c8fc7798..bf3d30d7 100644 --- a/README.md +++ b/README.md @@ -199,6 +199,7 @@ License and Author | | Chen Zhiwei () | | | Mark Vanderwiel() | | | Eric Zhou() | +| | Jan Klare () | | | | | **Copyright** | Copyright (c) 2013, AT&T Services, Inc. | | | Copyright (c) 2013-2014, SUSE Linux GmbH | diff --git a/Rakefile b/Rakefile index 1218f465..357a6c0b 100644 --- a/Rakefile +++ b/Rakefile @@ -2,38 +2,25 @@ task default: ["test"] task :test => [:lint, :style, :unit] -desc "Bundler preparation" -task :bundler_prep do - mkdir_p '.bundle' - sh %{bundle install --path=.bundle --jobs 1 --retry 3 --verbose} +task :berks_prep do + sh %{chef exec berks vendor} end -desc "Bershelf preparation" -task :berks_prep => :bundler_prep do - sh %{bundle exec berks vendor} +task :lint do + sh %{chef exec foodcritic --epic-fail any --tags ~FC003 --tags ~FC023 .} end -desc "Foodcritic linting" -task :lint => :bundler_prep do - sh %{bundle exec foodcritic --epic-fail any --tags ~FC003 --tags ~FC023 .} +task :style do + sh %{chef exec rubocop} end -desc "Rubocop style checking" -task :style => :bundler_prep do - sh %{bundle exec rubocop} -end - -desc "Unit testing" task :unit => :berks_prep do - sh %{bundle exec rspec --format documentation} + sh %{chef exec rspec --format documentation} end -desc "Clean up working directory" task :clean do rm_rf [ - '.bundle', 'berks-cookbooks', - 'Gemfile.lock', 'Berksfile.lock' ] end diff --git a/TESTING.md b/TESTING.md index fa2e9c1a..d9a964d8 100644 --- a/TESTING.md +++ b/TESTING.md @@ -1,18 +1,18 @@ # Testing the Cookbook # -This cookbook uses [bundler](http://gembundler.com/) and [berkshelf](http://berkshelf.com/) to isolate dependencies. Make sure you have `ruby 1.9.x`, `bundler`, `rake`, build essentials and the header files for `gecode` installed before continuing. Make sure that you're using gecode version 3. More info [here](https://github.com/opscode/dep-selector-libgecode/tree/0bad63fea305ede624c58506423ced697dd2545e#using-a-system-gecode-instead). +This cookbook uses [chefdk](https://downloads.chef.io/chef-dk/) and [berkshelf](http://berkshelf.com/) to isolate dependencies. Make sure you have chefdk and the header files for `gecode` installed before continuing. Make sure that you're using gecode version 3. More info [here](https://github.com/opscode/dep-selector-libgecode/tree/0bad63fea305ede624c58506423ced697dd2545e#using-a-system-gecode-instead). For more detailed information on what needs to be installed, you can have a quick look into the bootstrap.sh file in this repository, which does install all the needed things to get going on ubuntu trusty. The tests defined in the Rakefile include lint, style and unit. For integration testing please refere to the [openstack-chef-repo](https://github.com/stackforge/openstack-chef-repo). -We have three test suites which you can run individually (there are three rake tasks): +We have three test suites which you can run either, individually (there are three rake tasks): - $ rake lint - $ rake style - $ rake unit + $ chef exec rake lint + $ chef exec rake style + $ chef exec rake unit or altogether: - $ rake test + $ chef exec rake -The `rake` tasks will take care of installing the needed gem dependencies and cookbooks with `berkshelf`. +The `rake` tasks will take care of installing the needed cookbooks with `berkshelf`. ## Rubocop ## @@ -27,4 +27,4 @@ The `rake` tasks will take care of installing the needed gem dependencies and co ## Chefspec -[ChefSpec](https://github.com/sethvargo/chefspec/) is a unit testing framework for testing Chef cookbooks. ChefSpec makes it easy to write examples and get fast feedback on cookbook changes without the need for virtual machines or cloud servers. +[ChefSpec](https://github.com/sethvargo/chefspec) is a unit testing framework for testing Chef cookbooks. ChefSpec makes it easy to write examples and get fast feedback on cookbook changes without the need for virtual machines or cloud servers. diff --git a/spec/balancer-redhat_spec.rb b/spec/balancer-redhat_spec.rb index dd181e47..0653a1c5 100644 --- a/spec/balancer-redhat_spec.rb +++ b/spec/balancer-redhat_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::balancer' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/balancer-suse_spec.rb b/spec/balancer-suse_spec.rb index 3420a60a..c44d8602 100644 --- a/spec/balancer-suse_spec.rb +++ b/spec/balancer-suse_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::balancer' do describe 'suse' do - let(:runner) { ChefSpec::Runner.new(SUSE_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(SUSE_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/balancer_spec.rb b/spec/balancer_spec.rb index 3ed9c1e4..8c6b13fc 100644 --- a/spec/balancer_spec.rb +++ b/spec/balancer_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::balancer' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/build_openvswitch_source_spec.rb b/spec/build_openvswitch_source_spec.rb index fce3e5f3..ac236bbc 100644 --- a/spec/build_openvswitch_source_spec.rb +++ b/spec/build_openvswitch_source_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::build_openvswitch_source' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/client-redhat_spec.rb b/spec/client-redhat_spec.rb index 628222dd..273fbf1e 100644 --- a/spec/client-redhat_spec.rb +++ b/spec/client-redhat_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::client' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do runner.converge(described_recipe) diff --git a/spec/client_spec.rb b/spec/client_spec.rb index d6902711..855f7bd9 100644 --- a/spec/client_spec.rb +++ b/spec/client_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::client' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do runner.converge(described_recipe) diff --git a/spec/db_migration_spec.rb b/spec/db_migration_spec.rb index 68557bb8..b616bd42 100644 --- a/spec/db_migration_spec.rb +++ b/spec/db_migration_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::db_migration' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/default-redhat_spec.rb b/spec/default-redhat_spec.rb index 66f715c5..537277c6 100644 --- a/spec/default-redhat_spec.rb +++ b/spec/default-redhat_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/default_spec.rb b/spec/default_spec.rb index b96c8bbd..141a622f 100644 --- a/spec/default_spec.rb +++ b/spec/default_spec.rb @@ -38,7 +38,7 @@ end describe 'openstack-network' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/dhcp_agent-centos_spec.rb b/spec/dhcp_agent-centos_spec.rb index 8474d9d9..d52c4ff6 100644 --- a/spec/dhcp_agent-centos_spec.rb +++ b/spec/dhcp_agent-centos_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::dhcp_agent' do describe 'centos' do - let(:runner) { ChefSpec::Runner.new(CENTOS_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(CENTOS_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/dhcp_agent-suse_spec.rb b/spec/dhcp_agent-suse_spec.rb index 3e78e3b6..5ccd5876 100644 --- a/spec/dhcp_agent-suse_spec.rb +++ b/spec/dhcp_agent-suse_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::dhcp_agent' do describe 'suse' do - let(:runner) { ChefSpec::Runner.new(SUSE_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(SUSE_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/dhcp_agent_spec.rb b/spec/dhcp_agent_spec.rb index deaacf0e..29240429 100644 --- a/spec/dhcp_agent_spec.rb +++ b/spec/dhcp_agent_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::dhcp_agent' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/identity_registration_spec.rb b/spec/identity_registration_spec.rb index cad8aef1..6feec6bc 100644 --- a/spec/identity_registration_spec.rb +++ b/spec/identity_registration_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::identity_registration' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/l3_agent-redhat_spec.rb b/spec/l3_agent-redhat_spec.rb index 49b4e230..7813a591 100644 --- a/spec/l3_agent-redhat_spec.rb +++ b/spec/l3_agent-redhat_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::l3_agent' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/l3_agent_spec.rb b/spec/l3_agent_spec.rb index 7f761973..249c4985 100644 --- a/spec/l3_agent_spec.rb +++ b/spec/l3_agent_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::l3_agent' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/linuxbridge-redhat_spec.rb b/spec/linuxbridge-redhat_spec.rb index 83b82e91..60c7b803 100644 --- a/spec/linuxbridge-redhat_spec.rb +++ b/spec/linuxbridge-redhat_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::linuxbridge' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/linuxbridge-suse_spec.rb b/spec/linuxbridge-suse_spec.rb index dc9980ae..1a4defc7 100644 --- a/spec/linuxbridge-suse_spec.rb +++ b/spec/linuxbridge-suse_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::linuxbridge' do describe 'suse' do - let(:runner) { ChefSpec::Runner.new(SUSE_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(SUSE_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/linuxbridge_spec.rb b/spec/linuxbridge_spec.rb index cf73b9e9..ea5f01d6 100644 --- a/spec/linuxbridge_spec.rb +++ b/spec/linuxbridge_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::linuxbridge' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/metadata_agent_spec.rb b/spec/metadata_agent_spec.rb index 88199b8c..753afecd 100644 --- a/spec/metadata_agent_spec.rb +++ b/spec/metadata_agent_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::metadata_agent' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/openvswitch-redhat_spec.rb b/spec/openvswitch-redhat_spec.rb index d3076ffc..b6266449 100644 --- a/spec/openvswitch-redhat_spec.rb +++ b/spec/openvswitch-redhat_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::openvswitch' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/openvswitch-suse_spec.rb b/spec/openvswitch-suse_spec.rb index 67c7c084..c53e4923 100644 --- a/spec/openvswitch-suse_spec.rb +++ b/spec/openvswitch-suse_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::openvswitch' do describe 'suse' do - let(:runner) { ChefSpec::Runner.new(SUSE_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(SUSE_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/openvswitch_spec.rb b/spec/openvswitch_spec.rb index 52780c6e..5fc08083 100644 --- a/spec/openvswitch_spec.rb +++ b/spec/openvswitch_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::openvswitch' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:kmod_command) { '/usr/share/openvswitch/scripts/ovs-ctl force-reload-kmod' } let(:chef_run) do diff --git a/spec/server-redhat_spec.rb b/spec/server-redhat_spec.rb index 32938cbe..c0f988c5 100644 --- a/spec/server-redhat_spec.rb +++ b/spec/server-redhat_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::server' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/server-suse_spec.rb b/spec/server-suse_spec.rb index acd64355..732a225e 100644 --- a/spec/server-suse_spec.rb +++ b/spec/server-suse_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::server' do describe 'suse' do - let(:runner) { ChefSpec::Runner.new(SUSE_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(SUSE_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/server_spec.rb b/spec/server_spec.rb index 51953b7e..1217e094 100644 --- a/spec/server_spec.rb +++ b/spec/server_spec.rb @@ -3,7 +3,7 @@ require_relative 'spec_helper' describe 'openstack-network::server' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do diff --git a/spec/vpn_agent-redhat_spec.rb b/spec/vpn_agent-redhat_spec.rb index 31c6602d..d30a7c75 100644 --- a/spec/vpn_agent-redhat_spec.rb +++ b/spec/vpn_agent-redhat_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::vpn_agent' do describe 'redhat' do - let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron' diff --git a/spec/vpn_agent_spec.rb b/spec/vpn_agent_spec.rb index 14bd147d..5b46e60f 100644 --- a/spec/vpn_agent_spec.rb +++ b/spec/vpn_agent_spec.rb @@ -4,7 +4,7 @@ require_relative 'spec_helper' describe 'openstack-network::vpn_agent' do describe 'ubuntu' do - let(:runner) { ChefSpec::Runner.new(UBUNTU_OPTS) } + let(:runner) { ChefSpec::SoloRunner.new(UBUNTU_OPTS) } let(:node) { runner.node } let(:chef_run) do node.set['openstack']['compute']['network']['service_type'] = 'neutron'