Compare commits

...

3 Commits

16 changed files with 118 additions and 44 deletions

View File

@ -13,14 +13,18 @@ https://github.com/microsoft/vscode-dev-containers/tree/v0.140.1/containers/pupp
// Set *default* container specific settings.json values on container create.
"settings": {
"terminal.integrated.shell.linux": "/bin/bash"
"terminal.integrated.profiles.linux": {
"bash": {
"path": "bash",
}
}
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"puppet.puppet-vscode",
"rebornix.Ruby"
]
],
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [],

View File

@ -5,7 +5,7 @@
"settings": {
"terminal.integrated.profiles.linux": {
"bash": {
"path": "bash",
"path": "bash"
}
}
},

View File

@ -3,4 +3,6 @@
---
fixtures:
forge_modules:
# stdlib: "puppetlabs/stdlib"
stdlib:
repo: "puppetlabs/stdlib"
ref: "6.0.0"

View File

@ -4,7 +4,7 @@ require:
- rubocop-rspec
AllCops:
DisplayCopNames: true
TargetRubyVersion: '2.4'
TargetRubyVersion: '2.5'
Include:
- "**/*.rb"
Exclude:

34
Gemfile
View File

@ -13,21 +13,31 @@ def location_for(place_or_version, fake_version = nil)
end
end
ruby_version_segments = Gem::Version.new(RUBY_VERSION.dup).segments
minor_version = ruby_version_segments[0..1].join('.')
group :development do
gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 2.8.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "puppet-module-posix-default-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby]
gem "puppet-module-posix-dev-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby]
gem "puppet-module-win-default-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw]
gem "puppet-module-win-dev-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw]
gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 3.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "json", '= 2.5.1', require: false if Gem::Requirement.create(['>= 3.0.0', '< 3.0.5']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "json", '= 2.6.1', require: false if Gem::Requirement.create(['>= 3.1.0', '< 3.1.3']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "json", '= 2.6.3', require: false if Gem::Requirement.create(['>= 3.2.0', '< 4.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "voxpupuli-puppet-lint-plugins", '~> 4.0', require: false
gem "facterdb", '~> 1.18', require: false
gem "metadata-json-lint", '>= 2.0.2', '< 4.0.0', require: false
gem "puppetlabs_spec_helper", '~> 5.0', require: false
gem "rspec-puppet-facts", '~> 2.0', require: false
gem "codecov", '~> 0.2', require: false
gem "dependency_checker", '~> 0.2', require: false
gem "parallel_tests", '= 3.12.1', require: false
gem "pry", '~> 0.10', require: false
gem "simplecov-console", '~> 0.5', require: false
gem "puppet-debugger", '~> 1.0', require: false
gem "rubocop", '= 1.6.1', require: false
gem "rubocop-performance", '= 1.9.1', require: false
gem "rubocop-rspec", '= 2.0.1', require: false
gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw]
end
group :system_tests do
gem "puppet-module-posix-system-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby]
gem "puppet-module-win-system-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw]
gem "puppet_litmus", '< 1.0.0', require: false, platforms: [:ruby, :x64_mingw]
gem "serverspec", '~> 2.41', require: false
end
puppet_version = ENV['PUPPET_GEM_VERSION']

View File

@ -2,10 +2,8 @@
#
# Manages the nslcd server configuration file
#
class nslcd::config inherits nslcd
{
file
{
class nslcd::config inherits nslcd {
file {
$nslcd::config:
ensure => file,
owner => $nslcd::config_user,

View File

@ -98,8 +98,7 @@
# Sets the time after which the LDAP server is considered to be permanently unavailable.
# Once this time is reached retries will be done only once per this time period.
#
class nslcd
(
class nslcd (
Variant[Boolean,String[1]] $package_ensure = 'present',
String[1] $package_name = $nslcd::params::package_name,
Boolean $package_manage = true,
@ -131,9 +130,7 @@ class nslcd
Optional[Integer] $idle_timelimit = undef,
Integer $reconnect_sleeptime = 1,
Integer $reconnect_retrytime = 10,
)
inherits nslcd::params
{
) inherits nslcd::params {
contain nslcd::install
contain nslcd::config
contain nslcd::service

View File

@ -2,14 +2,10 @@
#
# Installs the nslcd package.
#
class nslcd::install inherits nslcd
{
if $nslcd::package_manage
{
package
{
$nslcd::package_name:
ensure => $nslcd::package_ensure,
class nslcd::install inherits nslcd {
if $nslcd::package_manage {
package { $nslcd::package_name:
ensure => $nslcd::package_ensure,
}
}
}

View File

@ -3,7 +3,7 @@
# Sets the default parameters for the nslcd class.
#
class nslcd::params {
case $::osfamily {
case $facts['os']['family'] {
'Debian': {
$package_name = 'nslcd'
$gid = 'nslcd'
@ -26,7 +26,7 @@ class nslcd::params {
$config_mode = '0600'
}
default: {
fail("The ${module_name} module is not supported on an ${::osfamily} based system.")
fail("The ${module_name} module is not supported on an ${facts['os']['family']} based system.")
}
}
}

View File

@ -1,6 +1,6 @@
{
"name": "ascendings-nslcd",
"version": "0.5.0",
"version": "0.5.1",
"author": "ascendings",
"summary": "Installs and configures nslcd.",
"license": "Apache-2.0",
@ -10,7 +10,7 @@
"dependencies": [
{
"name": "puppetlabs-stdlib",
"version_requirement": ">= 4.0.0 < 8.1.0"
"version_requirement": ">= 6.0.0 < 8.5.0"
}
],
"operatingsystem_support": [
@ -33,7 +33,7 @@
]
},
{
"operatingsystem": "RedHat RHEL",
"operatingsystem": "RedHat",
"operatingsystemrelease": [
"7",
"8"
@ -56,7 +56,7 @@
"ldap",
"authentication"
],
"pdk-version": "2.2.0",
"pdk-version": "2.7.1",
"template-url": "https://github.com/puppetlabs/pdk-templates#main",
"template-ref": "tags/2.3.0-0-g8aaceff"
"template-ref": "heads/main-0-gc6d4446"
}

2
pdk.yaml Normal file
View File

@ -0,0 +1,2 @@
---
ignore: []

View File

@ -0,0 +1,13 @@
# frozen_string_literal: true
require 'spec_helper'
describe 'nslcd::config' do
on_supported_os.each do |os, os_facts|
context "on #{os}" do
let(:facts) { os_facts }
it { is_expected.to compile.with_all_deps }
end
end
end

View File

@ -0,0 +1,13 @@
# frozen_string_literal: true
require 'spec_helper'
describe 'nslcd::install' do
on_supported_os.each do |os, os_facts|
context "on #{os}" do
let(:facts) { os_facts }
it { is_expected.to compile.with_all_deps }
end
end
end

View File

@ -0,0 +1,13 @@
# frozen_string_literal: true
require 'spec_helper'
describe 'nslcd' do
on_supported_os.each do |os, os_facts|
context "on #{os}" do
let(:facts) { os_facts }
it { is_expected.to compile.with_all_deps }
end
end
end

View File

@ -0,0 +1,13 @@
# frozen_string_literal: true
require 'spec_helper'
describe 'nslcd::params' do
on_supported_os.each do |os, os_facts|
context "on #{os}" do
let(:facts) { os_facts }
it { is_expected.to compile.with_all_deps }
end
end
end

View File

@ -0,0 +1,13 @@
# frozen_string_literal: true
require 'spec_helper'
describe 'nslcd::service' do
on_supported_os.each do |os, os_facts|
context "on #{os}" do
let(:facts) { os_facts }
it { is_expected.to compile.with_all_deps }
end
end
end