Update tests
- add lint and syntax test for Puppet manifests - set env GEM_HOME to allow jenkins install gem locally Change-Id: I4678088dc5ea9ef4cdd5e20feec9880538605067
This commit is contained in:
parent
7379def0b9
commit
0f4fe35c19
1
.gitignore
vendored
1
.gitignore
vendored
@ -3,3 +3,4 @@
|
||||
.build
|
||||
Gemfile.lock
|
||||
.tox
|
||||
.bundled_gems
|
||||
|
24
deployment_scripts/puppet/manifests/Gemfile
Normal file
24
deployment_scripts/puppet/manifests/Gemfile
Normal file
@ -0,0 +1,24 @@
|
||||
# Copyright 2015 Mirantis, Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
source 'https://rubygems.org'
|
||||
|
||||
group :development, :test do
|
||||
gem 'rake'
|
||||
gem "puppet", ENV['PUPPET_VERSION'] || '~> 3.4.0'
|
||||
gem 'puppetlabs_spec_helper'
|
||||
# Need to use master branch of puppet-lint because of
|
||||
# # https://github.com/rodjek/puppet-lint/issues/355
|
||||
gem 'puppet-lint', :git => 'https://github.com/rodjek/puppet-lint.git'
|
||||
end
|
||||
|
13
deployment_scripts/puppet/manifests/Rakefile
Normal file
13
deployment_scripts/puppet/manifests/Rakefile
Normal file
@ -0,0 +1,13 @@
|
||||
require 'puppet-lint/tasks/puppet-lint'
|
||||
require 'puppet-syntax/tasks/puppet-syntax'
|
||||
|
||||
PuppetLint.configuration.fail_on_warnings = true
|
||||
PuppetLint.configuration.send('disable_80chars')
|
||||
PuppetLint.configuration.send('disable_class_inherits_from_params_class')
|
||||
PuppetLint.configuration.send('disable_class_parameter_defaults')
|
||||
|
||||
desc "Run lint and syntax tests."
|
||||
task :test => [
|
||||
:lint,
|
||||
:syntax,
|
||||
]
|
@ -44,11 +44,10 @@ if $storage_options['objects_ceph']{
|
||||
}
|
||||
|
||||
class { 'lma_infra_alerting':
|
||||
openstack_deployment_name => $env_id,
|
||||
openstack_management_vip => $management_vip,
|
||||
additional_services => keys($services),
|
||||
# UI password
|
||||
password => $password,
|
||||
openstack_deployment_name => $env_id,
|
||||
openstack_management_vip => $management_vip,
|
||||
additional_services => keys($services),
|
||||
password => $password,
|
||||
}
|
||||
|
||||
class { 'lma_infra_alerting::nagios::contact':
|
||||
@ -141,19 +140,19 @@ $influxdb_node_name = $influxdb_grafana['node_name']
|
||||
$influxdb_nodes = filter_nodes(hiera('nodes'), 'user_node_name', $influxdb_node_name)
|
||||
if ! empty($influxdb_nodes){
|
||||
lma_infra_alerting::nagios::check_http { 'Grafana':
|
||||
host_name => $influxdb_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::grafana_port,
|
||||
url => '/login',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_content => 'grafana',
|
||||
host_name => $influxdb_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::grafana_port,
|
||||
url => '/login',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_content => 'grafana',
|
||||
}
|
||||
lma_infra_alerting::nagios::check_http { 'InfluxDB':
|
||||
host_name => $influxdb_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::influxdb_port,
|
||||
url => '/ping',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_status => '204 No Content',
|
||||
string_expected_in_headers => 'X-Influxdb-Version',
|
||||
host_name => $influxdb_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::influxdb_port,
|
||||
url => '/ping',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_status => '204 No Content',
|
||||
string_expected_in_headers => 'X-Influxdb-Version',
|
||||
}
|
||||
}
|
||||
|
||||
@ -163,19 +162,19 @@ $es_node_name = $es_kibana['node_name']
|
||||
$es_kibana_nodes = filter_nodes(hiera('nodes'), 'user_node_name', $es_node_name)
|
||||
if ! empty($es_kibana_nodes){
|
||||
lma_infra_alerting::nagios::check_http { 'Kibana':
|
||||
host_name => $es_kibana_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::kibana_port,
|
||||
url => '/',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_content => 'Kibana 3',
|
||||
host_name => $es_kibana_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::kibana_port,
|
||||
url => '/',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_content => 'Kibana 3',
|
||||
}
|
||||
|
||||
lma_infra_alerting::nagios::check_http { 'Elasticsearch':
|
||||
host_name => $es_kibana_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::elasticserach_port,
|
||||
url => '/',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_content => '"status" : 200',
|
||||
host_name => $es_kibana_nodes[0]['name'],
|
||||
port => $lma_infra_alerting::params::elasticserach_port,
|
||||
url => '/',
|
||||
custom_var_address => 'internal_address',
|
||||
string_expected_in_content => '"status" : 200',
|
||||
}
|
||||
}
|
||||
|
||||
|
29
tox.ini
29
tox.ini
@ -1,19 +1,42 @@
|
||||
[tox]
|
||||
envlist = nagios,lma_infra_alerting
|
||||
envlist = manifests,nagios,lma_infra_alerting
|
||||
skipsdist = True
|
||||
|
||||
[testenv:manifests]
|
||||
deps =
|
||||
changedir = {toxinidir}/deployment_scripts/puppet/manifests
|
||||
whitelist_externals =
|
||||
mkdir
|
||||
bundle
|
||||
setenv =
|
||||
GEM_HOME={toxinidir}/.bundled_gems
|
||||
commands =
|
||||
mkdir -p {toxinidir}/.bundled_gems
|
||||
bundle install
|
||||
bundle exec rake test
|
||||
|
||||
[testenv:nagios]
|
||||
deps =
|
||||
changedir = {toxinidir}/deployment_scripts/puppet/modules/{envname}
|
||||
whitelist_externals = bundle
|
||||
whitelist_externals =
|
||||
mkdir
|
||||
bundle
|
||||
setenv =
|
||||
GEM_HOME={toxinidir}/.bundled_gems
|
||||
commands =
|
||||
mkdir -p {toxinidir}/.bundled_gems
|
||||
bundle install
|
||||
bundle exec rake test
|
||||
|
||||
[testenv:lma_infra_alerting]
|
||||
deps =
|
||||
changedir = {toxinidir}/deployment_scripts/puppet/modules/{envname}
|
||||
whitelist_externals = bundle
|
||||
whitelist_externals =
|
||||
mkdir
|
||||
bundle
|
||||
setenv =
|
||||
GEM_HOME={toxinidir}/.bundled_gems
|
||||
commands =
|
||||
mkdir -p {toxinidir}/.bundled_gems
|
||||
bundle install
|
||||
bundle exec rake test
|
||||
|
Loading…
Reference in New Issue
Block a user