50 lines
1.2 KiB
Ruby
50 lines
1.2 KiB
Ruby
require 'serverspec'
|
|
|
|
set :backend, :exec
|
|
|
|
puts
|
|
puts '================================'
|
|
puts %x(ansible --version)
|
|
puts '================================'
|
|
|
|
describe package('influxdb') do
|
|
it { should be_installed }
|
|
end
|
|
|
|
describe file('/etc/influxdb/influxdb.conf') do
|
|
it { should be_file }
|
|
it { should be_mode 644 }
|
|
it { should be_owned_by 'root' }
|
|
it { should be_grouped_into 'root' }
|
|
it { should contain 'enabled = true' }
|
|
end
|
|
|
|
describe service('influxdb') do
|
|
it { should be_enabled }
|
|
it { should be_running.under('systemd') }
|
|
end
|
|
|
|
describe port(8086) do
|
|
it { should be_listening.with('tcp6') }
|
|
end
|
|
|
|
describe port(25_826) do
|
|
it { should be_listening.with('udp6') }
|
|
end
|
|
|
|
describe command('influx -execute "SHOW USERS"') do
|
|
its(:exit_status) { should eq 0 }
|
|
its(:stdout) { should match(/paul\s+true/) }
|
|
its(:stdout) { should match(/adrien\s+false/) }
|
|
its(:stdout) { should_not match 'antoine' }
|
|
end
|
|
|
|
describe command('influx -execute "SHOW DATABASES"') do
|
|
its(:exit_status) { should eq 0 }
|
|
its(:stdout) { should match 'new_database' }
|
|
end
|
|
|
|
describe command('influx -execute "SHOW GRANTS FOR adrien"') do
|
|
its(:exit_status) { should eq 0 }
|
|
its(:stdout) { should match(/new_database\s+WRITE/) }
|
|
end
|