Page Menu
Home
Software Heritage
Search
Configure Global Search
Log In
Files
F9343115
017_restart_on_change_spec.rb
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
4 KB
Subscribers
None
017_restart_on_change_spec.rb
View Options
require
'spec_helper_acceptance'
describe
"elasticsearch class:"
do
describe
"Setup"
do
it
'should run successfully'
do
pp
=
"class { 'elasticsearch': config => { 'cluster.name' => '
#{
test_settings
[
'cluster_name'
]
}
'}, manage_repo => true, repo_version => '
#{
test_settings
[
'repo_version'
]
}
', java_install => true, restart_on_change => false }
elasticsearch::instance { 'es-01': config => { 'node.name' => 'elasticsearch001', 'http.port' => '
#{
test_settings
[
'port_a'
]
}
' } }
elasticsearch::plugin{'lmenezes/elasticsearch-kopf': instances => 'es-01' }
"
# Run it twice and test for idempotency
apply_manifest
(
pp
,
:catch_failures
=>
true
)
expect
(
apply_manifest
(
pp
,
:catch_failures
=>
true
)
.
exit_code
)
.
to
be_zero
end
describe
service
(
test_settings
[
'service_name_a'
]
)
do
it
{
should
be_enabled
}
it
{
should
be_running
}
end
describe
package
(
test_settings
[
'package_name'
]
)
do
it
{
should
be_installed
}
end
describe
file
(
test_settings
[
'pid_file_a'
]
)
do
it
{
should
be_file
}
its
(
:content
)
{
should
match
/[0-9]+/
}
end
describe
"Elasticsearch serves requests on"
do
it
{
curl_with_retries
(
"check ES on
#{
test_settings
[
'port_a'
]
}
"
,
default
,
"http://localhost:
#{
test_settings
[
'port_a'
]
}
/?pretty=true"
,
0
)
}
end
describe
"Returns correct node name"
do
it
{
curl_with_retries
(
"check hostname on
#{
test_settings
[
'port_a'
]
}
"
,
default
,
"http://localhost:
#{
test_settings
[
'port_a'
]
}
/?pretty=true | grep elasticsearch001"
,
0
)
}
end
describe
file
(
'/etc/elasticsearch/es-01/elasticsearch.yml'
)
do
it
{
should
be_file
}
it
{
should
contain
'name: elasticsearch001'
}
end
describe
file
(
'/usr/share/elasticsearch/templates_import'
)
do
it
{
should
be_directory
}
end
end
describe
"Change config"
do
it
'should run successfully'
do
pp
=
"class { 'elasticsearch': config => { 'cluster.name' => '
#{
test_settings
[
'cluster_name'
]
}
'}, manage_repo => true, repo_version => '
#{
test_settings
[
'repo_version'
]
}
', java_install => true, restart_on_change => false }
elasticsearch::instance { 'es-01': config => { 'node.name' => 'elasticsearch002', 'http.port' => '
#{
test_settings
[
'port_a'
]
}
' } }
elasticsearch::plugin{'lmenezes/elasticsearch-kopf': instances => 'es-01' }
"
# Run it twice and test for idempotency
apply_manifest
(
pp
,
:catch_failures
=>
true
)
expect
(
apply_manifest
(
pp
,
:catch_failures
=>
true
)
.
exit_code
)
.
to
be_zero
end
describe
service
(
test_settings
[
'service_name_a'
]
)
do
it
{
should
be_enabled
}
it
{
should
be_running
}
end
describe
package
(
test_settings
[
'package_name'
]
)
do
it
{
should
be_installed
}
end
describe
file
(
test_settings
[
'pid_file_a'
]
)
do
it
{
should
be_file
}
its
(
:content
)
{
should
match
/[0-9]+/
}
end
describe
"Elasticsearch serves requests on"
do
it
{
curl_with_retries
(
"check ES on
#{
test_settings
[
'port_a'
]
}
"
,
default
,
"http://localhost:
#{
test_settings
[
'port_a'
]
}
/?pretty=true"
,
0
)
}
end
describe
"Returns correct node name"
do
it
{
curl_with_retries
(
"check hostname on
#{
test_settings
[
'port_a'
]
}
"
,
default
,
"http://localhost:
#{
test_settings
[
'port_a'
]
}
/?pretty=true | grep elasticsearch001"
,
0
)
}
end
describe
file
(
'/etc/elasticsearch/es-01/elasticsearch.yml'
)
do
it
{
should
be_file
}
it
{
should
contain
'name: elasticsearch002'
}
end
describe
file
(
'/usr/share/elasticsearch/templates_import'
)
do
it
{
should
be_directory
}
end
end
describe
"module removal"
do
it
'should run successfully'
do
pp
=
"class { 'elasticsearch': ensure => 'absent' }
elasticsearch::instance{ 'es-01': ensure => 'absent' }
"
apply_manifest
(
pp
,
:catch_failures
=>
true
)
end
describe
file
(
'/etc/elasticsearch/es-01'
)
do
it
{
should_not
be_directory
}
end
describe
file
(
'/etc/elasticsearch/es-02'
)
do
it
{
should_not
be_directory
}
end
describe
file
(
'/etc/elasticsearch/es-03'
)
do
it
{
should_not
be_directory
}
end
describe
service
(
test_settings
[
'service_name_a'
]
)
do
it
{
should_not
be_enabled
}
it
{
should_not
be_running
}
end
describe
service
(
test_settings
[
'service_name_b'
]
)
do
it
{
should_not
be_enabled
}
it
{
should_not
be_running
}
end
end
end
File Metadata
Details
Attached
Mime Type
text/x-ruby
Expires
Fri, Jul 4, 1:16 PM (6 d, 21 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3444854
Attached To
R150 puppet-elastic-elasticsearch
Event Timeline
Log In to Comment