]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
Add Puppet 4.x lint checks
authorSebastien Badia <sebastien.badia@enovance.com>
Sun, 22 Feb 2015 21:14:37 +0000 (22:14 +0100)
committerGael Chamoulaud <gchamoul@redhat.com>
Wed, 11 Mar 2015 08:03:59 +0000 (09:03 +0100)
This changes the puppet-lint requirement to 1.1.x, so that we can use
puppet-lint plugins.  Most of these plugins are for 4.x compat, but some
just catch common errors.

This commit also remove custom metadata rake task (this task is now
provided by puppetlabs_spec_helper).

Conflicts:
Gemfile

Change-Id: I22369948db6a2f8ddab9b8c93c3a047ff2e229ca

17 files changed:
Gemfile
Rakefile
examples/site.pp
manifests/agent/central.pp
manifests/agent/compute.pp
manifests/agent/notification.pp
manifests/agent/polling.pp
manifests/alarm/evaluator.pp
manifests/alarm/notifier.pp
manifests/api.pp
manifests/client.pp
manifests/collector.pp
manifests/db.pp
manifests/expirer.pp
manifests/init.pp
manifests/keystone/auth.pp
manifests/wsgi/apache.pp

diff --git a/Gemfile b/Gemfile
index 7cd12c5f1b238d86ca6d9b75b2a5d8e2213b9a8b..b0b2d45ff1eb64e7ab39586aa8d7111be949b942 100644 (file)
--- a/Gemfile
+++ b/Gemfile
@@ -2,9 +2,20 @@ source 'https://rubygems.org'
 
 group :development, :test do
   gem 'puppetlabs_spec_helper', :require => false
-  gem 'rspec-puppet', '~> 2.0.0'
-  gem 'puppet-lint-param-docs'
+  gem 'rspec-puppet', '~> 2.0.0', :require => false
+
   gem 'metadata-json-lint'
+  gem 'puppet-lint-param-docs'
+  gem 'puppet-lint-absolute_classname-check'
+  gem 'puppet-lint-absolute_template_path'
+  gem 'puppet-lint-trailing_newline-check'
+
+  # Puppet 4.x related lint checks
+  gem 'puppet-lint-unquoted_string-check'
+  gem 'puppet-lint-leading_zero-check'
+  gem 'puppet-lint-variable_contains_upcase'
+  gem 'puppet-lint-numericvariable'
+
   gem 'json'
   gem 'webmock'
 end
index c022216ce267972dfe80db7d57b1ec25fd624e8e..bb3e2bbf2cecef36677291c7ac81802fac9fdd92 100644 (file)
--- a/Rakefile
+++ b/Rakefile
@@ -10,8 +10,3 @@ PuppetLint.configuration.send('disable_only_variable_string')
 exclude_tests_paths = ['pkg/**/*','vendor/**/*']
 PuppetLint.configuration.ignore_paths = exclude_tests_paths
 PuppetSyntax.exclude_paths = exclude_tests_paths
-
-desc "Lint metadata.json file"
-task :metadata do
-  sh "metadata-json-lint metadata.json"
-end
index fd24720321e483e6eb641cba4b02ce1dc2f98274..e95812e2f53aed9f3f5bf8564b64d87d154f0ad0 100644 (file)
@@ -4,39 +4,39 @@ node default {
   }
 
   # First, install a mysql server
-  class { 'mysql::server': }
+  class { '::mysql::server': }
   # And create the database
-  class { 'ceilometer::db::mysql':
+  class { '::ceilometer::db::mysql':
     password => 'ceilometer',
   }
 
   # Add the base ceilometer class & parameters
   # This class is required by ceilometer agents & api classes
   # The metering_secret parameter is mandatory
-  class { 'ceilometer':
+  class { '::ceilometer':
     metering_secret => 'darksecret'
   }
 
   # Configure the ceilometer database
   # Only needed if ceilometer::agent::central or ceilometer::api are declared
-  class { 'ceilometer::db':
+  class { '::ceilometer::db':
   }
 
   # Configure ceilometer database with mongodb
 
-  # class { 'ceilometer::db':
+  # class { '::ceilometer::db':
   #   database_connection => 'mongodb://localhost:27017/ceilometer',
   #   require             => Class['mongodb'],
   # }
 
   # Install the ceilometer-api service
   # The keystone_password parameter is mandatory
-  class { 'ceilometer::api':
+  class { '::ceilometer::api':
     keystone_password => 'tralalayouyou'
   }
 
   # Set common auth parameters used by all agents (compute/central)
-  class { 'ceilometer::agent::auth':
+  class { '::ceilometer::agent::auth':
     auth_url      => 'http://localhost:35357/v2.0',
     auth_password => 'tralalerotralala'
   }
@@ -59,7 +59,7 @@ node default {
   #   ipmi_namespace    => true
   # }
   # As default use central and compute polling namespaces
-  class { 'ceilometer::agent::polling':
+  class { '::ceilometer::agent::polling':
     central_namespace => true,
     compute_namespace => true,
     ipmi_namespace    => false,
@@ -75,20 +75,20 @@ node default {
   # }
 
   # Install alarm notifier
-  class { 'ceilometer::alarm::notifier':
+  class { '::ceilometer::alarm::notifier':
   }
 
   # Install alarm evaluator
-  class { 'ceilometer::alarm::evaluator':
+  class { '::ceilometer::alarm::evaluator':
   }
 
   # Purge 1 month old meters
-  class { 'ceilometer::expirer':
+  class { '::ceilometer::expirer':
     time_to_live => '2592000'
   }
 
   # Install notification agent
-  class { 'ceilometer::agent::notification':
+  class { '::ceilometer::agent::notification':
   }
 
 }
index a781255fb02904c8405974354a59f5d96986e55b..e197b383bdde43fcffa314f9e4dc8fbe27a3b45f 100644 (file)
@@ -25,7 +25,7 @@ class ceilometer::agent::central (
   $coordination_url = undef,
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   Ceilometer_config<||> ~> Service['ceilometer-agent-central']
 
index 300ccef0cd39a958fd0cd29d6f77e0ea522a34c4..2cd02ac9d89ef1679d4ba6896fca1e8d2b312fec 100644 (file)
@@ -22,7 +22,7 @@ class ceilometer::agent::compute (
 
   warning('This class is deprecated. Please use ceilometer::agent::polling with compute namespace instead.')
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   Ceilometer_config<||> ~> Service['ceilometer-agent-compute']
 
index 9a6922440eca2e734a48bf540ea6a26481701d83..de0c9546a42a65a666728c4d71e7c76e8fd37618 100644 (file)
@@ -52,7 +52,7 @@ class ceilometer::agent::notification (
   $package_ensure     = 'present',
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   Ceilometer_config<||> ~> Service['ceilometer-agent-notification']
 
index 1d02a4838a1bdf1cc9054c260d4e3e6685118097..209b4eab13b5648fbd454d00b3b2468cba9bdc38 100644 (file)
@@ -40,7 +40,7 @@ class ceilometer::agent::polling (
   $coordination_url  = undef,
 ) inherits ceilometer {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   if $central_namespace {
     $central_namespace_name = 'central'
index 9a67843ae1be46c0e7eef399ae9da87aabd5018f..55c922abe4698204a64585a292b739e0018616c0 100644 (file)
@@ -39,7 +39,7 @@ class ceilometer::alarm::evaluator (
   $coordination_url    = undef,
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   validate_re("${evaluation_interval}",'^(\d+)$')
 
index 4bad2210094fa026c26e54802f545ee40d0f10e1..d4be85ce1038edd86458962c6b31cf3d5f7b1827 100644 (file)
@@ -34,7 +34,7 @@ class ceilometer::alarm::notifier (
   $rest_notifier_ssl_verify       = true,
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   validate_bool($rest_notifier_ssl_verify)
 
index d85104dcddf11848dccc92ba8d5f71c42af5989a..1d793323b9ab43bdc1ed338600c7970a98429934 100644 (file)
@@ -76,8 +76,8 @@ class ceilometer::api (
   $port                       = '8777'
 ) {
 
-  include ceilometer::params
-  include ceilometer::policy
+  include ::ceilometer::params
+  include ::ceilometer::policy
 
   validate_string($keystone_password)
 
index faa791a1810cc4360601c24a990afd758a81b7a7..c02ac3c0f6314912bb16648b5ebddf3256c89c10 100644 (file)
@@ -9,7 +9,7 @@ class ceilometer::client (
   $ensure = 'present'
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   package { 'python-ceilometerclient':
     ensure => $ensure,
index 440538c563efe7ffa7104fea22d4caeb8338bddc..3088fb419f0b875760dfbee48b208129bb70871a 100644 (file)
@@ -19,7 +19,7 @@ class ceilometer::collector (
   $package_ensure = 'present',
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   Ceilometer_config<||> ~> Service['ceilometer-collector']
 
index 02e5c7994afdc0814998351835e10df2c7af11d5..74af7994a380f3eca0005e9d747ac59a7386fa8f 100644 (file)
@@ -18,7 +18,7 @@ class ceilometer::db (
   $mysql_module        = undef,
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   if $mysql_module {
     warning('The mysql_module parameter is deprecated. The latest 2.x mysql module will be used.')
@@ -33,7 +33,7 @@ class ceilometer::db (
     /^mysql:\/\//: {
       $backend_package = false
 
-      include mysql::bindings::python
+      include ::mysql::bindings::python
     }
     /^postgresql:\/\//: {
       $backend_package = $::ceilometer::params::psycopg_package_name
index 07a16fb7a37a9989d981513879a02e0011635b87..a94159f58f0632f3c004514bdcc29a5c21ca3507 100644 (file)
@@ -51,7 +51,7 @@ class ceilometer::expirer (
   $weekday        = '*',
 ) {
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   Package<| title == 'ceilometer-common' |> -> Class['ceilometer::expirer']
 
index b45a5ff8e9b4cbbfb86db6f847075440e1f9bdb9..cdfaef7ba46b2cbe9b1f201b6df60393354dae0c 100644 (file)
@@ -112,7 +112,7 @@ class ceilometer(
 
   validate_string($metering_secret)
 
-  include ceilometer::params
+  include ::ceilometer::params
 
   if $kombu_ssl_ca_certs and !$rabbit_use_ssl {
     fail('The kombu_ssl_ca_certs parameter requires rabbit_use_ssl to be set to true')
index 2f8d9d8f063d1d1fa4a976075de76ca1e47fdbc7..bc8b775b7020d2702d70fdb901ca37c304306f57 100644 (file)
@@ -125,7 +125,7 @@ class ceilometer::keystone::auth (
     $real_service_name = $auth_name
   }
 
-  keystone::resource::service_identity { $auth_name:
+  ::keystone::resource::service_identity { $auth_name:
     configure_user      => $configure_user,
     configure_user_role => $configure_user_role,
     configure_endpoint  => $configure_endpoint,
index d3d62959eb0cd466af3b4aa70852e2b216c7ef69..8ddba112c66238e304b5efaed72b50a70ea2448d 100644 (file)
@@ -102,7 +102,7 @@ class ceilometer::wsgi::apache (
     include ::apache::mod::ssl
   }
 
-  openstacklib::wsgi::apache { 'ceilometer_wsgi':
+  ::openstacklib::wsgi::apache { 'ceilometer_wsgi':
     bind_host           => $bind_host,
     bind_port           => $port,
     group               => 'ceilometer',