Add Puppet 4.x lint checks

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.

Change-Id: I3b16baf063746024cb8dc89a931dae2f604258f6
This commit is contained in:
Clayton O'Neill 2015-02-17 14:53:22 +00:00
parent d295f0daac
commit 4ce3c0558b
11 changed files with 44 additions and 34 deletions

14
Gemfile
View File

@ -2,9 +2,19 @@ source 'https://rubygems.org'
group :development, :test do
gem 'puppetlabs_spec_helper', :require => false
gem 'puppet-lint', '~> 0.3.2'
gem 'rspec-puppet', '~> 1.0.1'
gem 'puppet-lint', '~> 1.1.0'
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 'rake', '10.1.1'
gem 'rspec-puppet', '~> 1.0.1', :require => false
gem 'rspec', '< 2.99'
gem 'json'
gem 'webmock'

View File

@ -6,9 +6,9 @@
#
node /designate/ {
include 'apt'
include 'rabbitmq'
include 'mysql::server'
include '::apt'
include '::rabbitmq'
include '::mysql::server'
# Keystone parameters
$keystone_db_host = '127.0.0.1'
@ -27,12 +27,12 @@ node /designate/ {
$db_host = '127.0.0.1'
# == Keystone == #
class { 'keystone::db::mysql':
class { '::keystone::db::mysql':
password => $keystone_db_password,
allowed_hosts => '%',
}
class { 'keystone':
class { '::keystone':
verbose => true,
validate_service => true,
catalog_type => 'sql',
@ -44,22 +44,22 @@ node /designate/ {
}
## Adds the admin credential to keystone.
class { 'keystone::roles::admin':
class { '::keystone::roles::admin':
email => 'admin@example.com',
password => $keystone_password,
admin_tenant => 'admin',
}
## Installs the service user endpoint.
class { 'keystone::endpoint': }
class { '::keystone::endpoint': }
# == Designate == #
class {'designate::db::mysql':
class {'::designate::db::mysql':
password => $designate_db_password,
}
class {'designate':
class {'::designate':
rabbit_host => $rabbit_host,
rabbit_userid => $rabbit_userid,
rabbit_password => $rabbit_password,
@ -69,23 +69,23 @@ node /designate/ {
database_connection => "mysql://designate:${designate_db_password}@${db_host}/designate"
}
include 'designate::client'
class {'designate::api':
include '::designate::client'
class {'::designate::api':
auth_strategy => $auth_strategy,
keystone_password => $keystone_password,
}
class {'designate::central':
class {'::designate::central':
backend_driver => $backend_driver,
}
include 'designate::dns'
class {'designate::backend::bind9':
include '::designate::dns'
class {'::designate::backend::bind9':
rndc_config_file => '',
rndc_key_file => '',
}
class {'designate::keystone::auth':
class {'::designate::keystone::auth':
password => $keystone_password,
}
}

View File

@ -1,8 +1,8 @@
node /designate/ {
include 'apt'
include 'rabbitmq'
include 'mysql::server'
include '::apt'
include '::rabbitmq'
include '::mysql::server'
# This example would install designate api and designate central service
$rabbit_host = '127.0.0.1'
@ -14,15 +14,15 @@ node /designate/ {
$db_host = '127.0.0.1'
include 'designate::dns'
include 'designate::backend::bind9'
include '::designate::dns'
include '::designate::backend::bind9'
class {'designate::db::mysql':
class {'::designate::db::mysql':
password => $designate_db_password,
}
class {'designate':
class {'::designate':
rabbit_host => $rabbit_host,
rabbit_userid => $rabbit_userid,
rabbit_password => $rabbit_password,
@ -32,11 +32,11 @@ node /designate/ {
database_connection => "mysql://designate:${designate_db_password}@${db_host}/designate"
}
class {'designate::api':
class {'::designate::api':
auth_strategy => $auth_strategy,
}
class {'designate::central':
class {'::designate::central':
backend_driver => $backend_driver,
}
}

View File

@ -31,7 +31,7 @@ class designate::agent (
$backend_driver = 'bind9',
$enabled = true,
) {
include designate::params
include ::designate::params
package { 'designate-agent':
ensure => $package_ensure,

View File

@ -71,7 +71,7 @@ class designate::api (
$enable_api_v1 = true,
$enable_api_v2 = false,
){
include designate::params
include ::designate::params
package { 'designate-api':
ensure => $package_ensure,

View File

@ -31,7 +31,7 @@ class designate::central (
$enabled = true,
$backend_driver = 'bind9',
) {
include designate::params
include ::designate::params
package { 'designate-central':
ensure => $package_ensure,

View File

@ -17,7 +17,7 @@ class designate::client (
$client_package_name = undef,
) {
include designate::params
include ::designate::params
package { 'python-designateclient':
ensure => $package_ensure,

View File

@ -14,7 +14,7 @@ class designate::db (
$database_connection = 'mysql://designate:designate@localhost/designate'
) {
include designate::params
include ::designate::params
Package<| title == 'designate-common' |> -> Class['designate::db']

View File

@ -17,7 +17,7 @@ class designate::dns (
$designatefile = $::designate::params::designatefile,
) inherits designate::params {
include dns::params
include ::dns::params
file { $designatepath:
ensure => directory,
owner => $::dns::params::user,

View File

@ -61,7 +61,7 @@ class designate(
$rabbit_virtualhost = '/',
) {
include designate::params
include ::designate::params
package { 'designate-common':
ensure => $package_ensure,
name => pick($common_package_name, $::designate::params::common_package_name),

View File

@ -26,7 +26,7 @@ class designate::sink (
$service_ensure = 'running',
$enabled = true,
) {
include designate::params
include ::designate::params
package { 'designate-sink':
ensure => $package_ensure,