Skip to content
This repository has been archived by the owner on Mar 26, 2024. It is now read-only.

Commit

Permalink
Fix cerner_splunk_sh_cluster remove action (#203)
Browse files Browse the repository at this point in the history
* Fixed auto running of sh_cluster resource spec
  • Loading branch information
gravesb committed Oct 16, 2019
1 parent e228ba0 commit ad2831f
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 29 deletions.
3 changes: 3 additions & 0 deletions Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,7 @@ Vagrant.configure('2') do |config|
default_omnibus config
cfg.vm.provision :chef_client do |chef|
chef_defaults chef, :c2_deployer
chef.add_recipe 'cerner_splunk_test::install_libarchive'
chef.add_recipe 'cerner_splunk::shc_deployer'
end
network cfg, :c2_deployer
Expand All @@ -269,6 +270,8 @@ Vagrant.configure('2') do |config|
cfg.vm.provision :chef_client do |chef|
chef_defaults chef, :c2_newnode
chef.add_recipe 'cerner_splunk::shc_search_head'
# Comment out the above line and uncomment the one below and re-provision in order to test the remove recipe.
#chef.add_recipe 'cerner_splunk::shc_remove_search_head'
end
network cfg, :c2_newnode
end
Expand Down
1 change: 1 addition & 0 deletions providers/sh_cluster.rb
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@

action :remove do
admin_password = new_resource.admin_password
management_host = CernerSplunk.management_host(node)

execute 'remove search head' do # ~FC009
command "#{node['splunk']['cmd']} remove shcluster-member -auth admin:#{admin_password}"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

require_relative '../spec_helper'

describe 'cerner_splunk::shc_search_head' do
describe 'cerner_splunk_sh_cluster:add' do
subject do
runner = ChefSpec::SoloRunner.new(step_into: ['cerner_splunk_sh_cluster']) do |node|
node.set['splunk']['config']['clusters'] = ['cerner_splunk/cluster']
node.set['splunk']['cmd'] = '/opt/splunk/bin/splunk'
node.set['splunk']['package']['base_name'] = 'base_name'
node.set['splunk']['package']['download_group'] = 'download_group'
runner = ChefSpec::SoloRunner.new(platform: 'centos', version: '6.10', step_into: ['cerner_splunk_sh_cluster']) do |node|
node.override['splunk']['config']['clusters'] = ['cerner_splunk/cluster']
node.override['splunk']['cmd'] = '/opt/splunk/bin/splunk'
node.override['splunk']['package']['base_name'] = 'base_name'
node.override['splunk']['package']['download_group'] = 'download_group'
end
runner.converge('cerner_splunk::_install', described_recipe)
runner.converge('cerner_splunk::_install', 'cerner_splunk::shc_search_head')
end

let(:cluster_config) do
Expand All @@ -31,9 +31,10 @@
end

before do
allow(Chef::DataBagItem).to receive(:load).with('cerner_splunk', 'cluster').and_return(cluster_config)
allow(Chef::DataBagItem).to receive(:load).with('cerner_splunk', 'indexes').and_return({})
stub_command('/opt/splunk/bin/splunk list shcluster-members -auth admin:changeme | grep 127.0.0.1').and_return(existing_member)
allow(ChefVault::Item).to receive(:data_bag_item_type).with('cerner_splunk', 'cluster').and_return(:normal)
stub_data_bag_item('cerner_splunk', 'cluster').and_return(cluster_config)
stub_data_bag_item('cerner_splunk', 'indexes').and_return({})
stub_command('/opt/splunk/bin/splunk list shcluster-members -auth admin:changeme | grep 10.0.0.2').and_return(existing_member)
end

after do
Expand All @@ -57,15 +58,15 @@
end
end

describe 'cerner_splunk::shc_remove_search_head' do
describe 'cerner_splunk_sh_cluster:remove' do
subject do
runner = ChefSpec::SoloRunner.new(step_into: ['cerner_splunk_sh_cluster']) do |node|
node.set['splunk']['config']['clusters'] = ['cerner_splunk/cluster']
node.set['splunk']['cmd'] = '/opt/splunk/bin/splunk'
node.set['splunk']['package']['base_name'] = 'base_name'
node.set['splunk']['package']['download_group'] = 'download_group'
runner = ChefSpec::SoloRunner.new(platform: 'centos', version: '6.10', step_into: ['cerner_splunk_sh_cluster']) do |node|
node.override['splunk']['config']['clusters'] = ['cerner_splunk/cluster']
node.override['splunk']['cmd'] = '/opt/splunk/bin/splunk'
node.override['splunk']['package']['base_name'] = 'base_name'
node.override['splunk']['package']['download_group'] = 'download_group'
end
runner.converge('cerner_splunk::_install', described_recipe)
runner.converge('cerner_splunk::_install', 'cerner_splunk::shc_remove_search_head')
end

let(:cluster_config) do
Expand All @@ -88,9 +89,10 @@
let(:existing_member) { nil }

before do
allow(Chef::DataBagItem).to receive(:load).with('cerner_splunk', 'cluster').and_return(cluster_config)
allow(Chef::DataBagItem).to receive(:load).with('cerner_splunk', 'indexes').and_return({})
stub_command('/opt/splunk/bin/splunk list shcluster-members -auth admin:changeme | grep 127.0.0.1').and_return(existing_member)
allow(ChefVault::Item).to receive(:data_bag_item_type).with('cerner_splunk', 'cluster').and_return(:normal)
stub_data_bag_item('cerner_splunk', 'cluster').and_return(cluster_config)
stub_data_bag_item('cerner_splunk', 'indexes').and_return({})
stub_command('/opt/splunk/bin/splunk list shcluster-members -auth admin:changeme | grep 10.0.0.2').and_return(existing_member)
end

after do
Expand All @@ -114,15 +116,15 @@
end
end

describe 'cerner_splunk::shc_captain' do
describe 'cerner_splunk_sh_cluster:initialize' do
subject do
runner = ChefSpec::SoloRunner.new(step_into: ['cerner_splunk_sh_cluster']) do |node|
node.set['splunk']['config']['clusters'] = ['cerner_splunk/cluster']
node.set['splunk']['cmd'] = '/opt/splunk/bin/splunk'
node.set['splunk']['package']['base_name'] = 'base_name'
node.set['splunk']['package']['download_group'] = 'download_group'
runner = ChefSpec::SoloRunner.new(platform: 'centos', version: '6.10', step_into: ['cerner_splunk_sh_cluster']) do |node|
node.override['splunk']['config']['clusters'] = ['cerner_splunk/cluster']
node.override['splunk']['cmd'] = '/opt/splunk/bin/splunk'
node.override['splunk']['package']['base_name'] = 'base_name'
node.override['splunk']['package']['download_group'] = 'download_group'
end
runner.converge('cerner_splunk::_install', described_recipe)
runner.converge('cerner_splunk::_install', 'cerner_splunk::shc_captain')
end

let(:cluster_config) do
Expand All @@ -145,8 +147,9 @@
let(:captain_exist) { nil }

before do
allow(Chef::DataBagItem).to receive(:load).with('cerner_splunk', 'cluster').and_return(cluster_config)
allow(Chef::DataBagItem).to receive(:load).with('cerner_splunk', 'indexes').and_return({})
allow(ChefVault::Item).to receive(:data_bag_item_type).with('cerner_splunk', 'cluster').and_return(:normal)
stub_data_bag_item('cerner_splunk', 'cluster').and_return(cluster_config)
stub_data_bag_item('cerner_splunk', 'indexes').and_return({})
stub_command('/opt/splunk/bin/splunk list shcluster-members -auth admin:changeme | grep is_captain:1').and_return(captain_exist)
end

Expand Down

0 comments on commit ad2831f

Please sign in to comment.